/* --- Colors --- */
/* --- Initial Variables --- */
/* --- Derived Variables --- */
/* --- Fonts --- */
@import url("https://fonts.googleapis.com/css?family=Domine:400,700&display=swap");
/* --- Spacing --- */
/* --- Misc --- */
/* --- Grid Sizing --- */
/* --- Grid Mixins --- */
/* --- Transitions --- */
/* --- Other --- */
/* --- Grid Structure --- */
@import url(../lucy-share/css/icons.css);
.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 #D8D8D8; }

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

[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; }

/* --- Grid Styles --- */
.span1 {
  width: calc(4.16667% - 20px);
  margin-left: 20px; }
  .span1 .span1 {
    width: calc(100% - 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; }
  .span2 .span1 {
    width: calc(50% - 20px); }
  .span2 .span2 {
    width: calc(100% - 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; }
  .span3 .span1 {
    width: calc(33.33333% - 20px); }
  .span3 .span2 {
    width: calc(66.66667% - 20px); }
  .span3 .span3 {
    width: calc(100% - 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; }
  .span4 .span1 {
    width: calc(25% - 20px); }
  .span4 .span2 {
    width: calc(50% - 20px); }
  .span4 .span3 {
    width: calc(75% - 20px); }
  .span4 .span4 {
    width: calc(100% - 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; }
  .span5 .span1 {
    width: calc(20% - 20px); }
  .span5 .span2 {
    width: calc(40% - 20px); }
  .span5 .span3 {
    width: calc(60% - 20px); }
  .span5 .span4 {
    width: calc(80% - 20px); }
  .span5 .span5 {
    width: calc(100% - 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; }
  .span6 .span1 {
    width: calc(16.66667% - 20px); }
  .span6 .span2 {
    width: calc(33.33333% - 20px); }
  .span6 .span3 {
    width: calc(50% - 20px); }
  .span6 .span4 {
    width: calc(66.66667% - 20px); }
  .span6 .span5 {
    width: calc(83.33333% - 20px); }
  .span6 .span6 {
    width: calc(100% - 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; }
  .span7 .span1 {
    width: calc(14.28571% - 20px); }
  .span7 .span2 {
    width: calc(28.57143% - 20px); }
  .span7 .span3 {
    width: calc(42.85714% - 20px); }
  .span7 .span4 {
    width: calc(57.14286% - 20px); }
  .span7 .span5 {
    width: calc(71.42857% - 20px); }
  .span7 .span6 {
    width: calc(85.71429% - 20px); }
  .span7 .span7 {
    width: calc(100% - 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; }
  .span8 .span1 {
    width: calc(12.5% - 20px); }
  .span8 .span2 {
    width: calc(25% - 20px); }
  .span8 .span3 {
    width: calc(37.5% - 20px); }
  .span8 .span4 {
    width: calc(50% - 20px); }
  .span8 .span5 {
    width: calc(62.5% - 20px); }
  .span8 .span6 {
    width: calc(75% - 20px); }
  .span8 .span7 {
    width: calc(87.5% - 20px); }
  .span8 .span8 {
    width: calc(100% - 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; }
  .span9 .span1 {
    width: calc(11.11111% - 20px); }
  .span9 .span2 {
    width: calc(22.22222% - 20px); }
  .span9 .span3 {
    width: calc(33.33333% - 20px); }
  .span9 .span4 {
    width: calc(44.44444% - 20px); }
  .span9 .span5 {
    width: calc(55.55556% - 20px); }
  .span9 .span6 {
    width: calc(66.66667% - 20px); }
  .span9 .span7 {
    width: calc(77.77778% - 20px); }
  .span9 .span8 {
    width: calc(88.88889% - 20px); }
  .span9 .span9 {
    width: calc(100% - 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; }
  .span10 .span1 {
    width: calc(10% - 20px); }
  .span10 .span2 {
    width: calc(20% - 20px); }
  .span10 .span3 {
    width: calc(30% - 20px); }
  .span10 .span4 {
    width: calc(40% - 20px); }
  .span10 .span5 {
    width: calc(50% - 20px); }
  .span10 .span6 {
    width: calc(60% - 20px); }
  .span10 .span7 {
    width: calc(70% - 20px); }
  .span10 .span8 {
    width: calc(80% - 20px); }
  .span10 .span9 {
    width: calc(90% - 20px); }
  .span10 .span10 {
    width: calc(100% - 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; }
  .span11 .span1 {
    width: calc(9.09091% - 20px); }
  .span11 .span2 {
    width: calc(18.18182% - 20px); }
  .span11 .span3 {
    width: calc(27.27273% - 20px); }
  .span11 .span4 {
    width: calc(36.36364% - 20px); }
  .span11 .span5 {
    width: calc(45.45455% - 20px); }
  .span11 .span6 {
    width: calc(54.54545% - 20px); }
  .span11 .span7 {
    width: calc(63.63636% - 20px); }
  .span11 .span8 {
    width: calc(72.72727% - 20px); }
  .span11 .span9 {
    width: calc(81.81818% - 20px); }
  .span11 .span10 {
    width: calc(90.90909% - 20px); }
  .span11 .span11 {
    width: calc(100% - 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; }
  .span12 .span1 {
    width: calc(8.33333% - 20px); }
  .span12 .span2 {
    width: calc(16.66667% - 20px); }
  .span12 .span3 {
    width: calc(25% - 20px); }
  .span12 .span4 {
    width: calc(33.33333% - 20px); }
  .span12 .span5 {
    width: calc(41.66667% - 20px); }
  .span12 .span6 {
    width: calc(50% - 20px); }
  .span12 .span7 {
    width: calc(58.33333% - 20px); }
  .span12 .span8 {
    width: calc(66.66667% - 20px); }
  .span12 .span9 {
    width: calc(75% - 20px); }
  .span12 .span10 {
    width: calc(83.33333% - 20px); }
  .span12 .span11 {
    width: calc(91.66667% - 20px); }
  .span12 .span12 {
    width: calc(100% - 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; }
  .span13 .span1 {
    width: calc(7.69231% - 20px); }
  .span13 .span2 {
    width: calc(15.38462% - 20px); }
  .span13 .span3 {
    width: calc(23.07692% - 20px); }
  .span13 .span4 {
    width: calc(30.76923% - 20px); }
  .span13 .span5 {
    width: calc(38.46154% - 20px); }
  .span13 .span6 {
    width: calc(46.15385% - 20px); }
  .span13 .span7 {
    width: calc(53.84615% - 20px); }
  .span13 .span8 {
    width: calc(61.53846% - 20px); }
  .span13 .span9 {
    width: calc(69.23077% - 20px); }
  .span13 .span10 {
    width: calc(76.92308% - 20px); }
  .span13 .span11 {
    width: calc(84.61538% - 20px); }
  .span13 .span12 {
    width: calc(92.30769% - 20px); }
  .span13 .span13 {
    width: calc(100% - 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; }
  .span14 .span1 {
    width: calc(7.14286% - 20px); }
  .span14 .span2 {
    width: calc(14.28571% - 20px); }
  .span14 .span3 {
    width: calc(21.42857% - 20px); }
  .span14 .span4 {
    width: calc(28.57143% - 20px); }
  .span14 .span5 {
    width: calc(35.71429% - 20px); }
  .span14 .span6 {
    width: calc(42.85714% - 20px); }
  .span14 .span7 {
    width: calc(50% - 20px); }
  .span14 .span8 {
    width: calc(57.14286% - 20px); }
  .span14 .span9 {
    width: calc(64.28571% - 20px); }
  .span14 .span10 {
    width: calc(71.42857% - 20px); }
  .span14 .span11 {
    width: calc(78.57143% - 20px); }
  .span14 .span12 {
    width: calc(85.71429% - 20px); }
  .span14 .span13 {
    width: calc(92.85714% - 20px); }
  .span14 .span14 {
    width: calc(100% - 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; }
  .span15 .span1 {
    width: calc(6.66667% - 20px); }
  .span15 .span2 {
    width: calc(13.33333% - 20px); }
  .span15 .span3 {
    width: calc(20% - 20px); }
  .span15 .span4 {
    width: calc(26.66667% - 20px); }
  .span15 .span5 {
    width: calc(33.33333% - 20px); }
  .span15 .span6 {
    width: calc(40% - 20px); }
  .span15 .span7 {
    width: calc(46.66667% - 20px); }
  .span15 .span8 {
    width: calc(53.33333% - 20px); }
  .span15 .span9 {
    width: calc(60% - 20px); }
  .span15 .span10 {
    width: calc(66.66667% - 20px); }
  .span15 .span11 {
    width: calc(73.33333% - 20px); }
  .span15 .span12 {
    width: calc(80% - 20px); }
  .span15 .span13 {
    width: calc(86.66667% - 20px); }
  .span15 .span14 {
    width: calc(93.33333% - 20px); }
  .span15 .span15 {
    width: calc(100% - 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; }
  .span16 .span1 {
    width: calc(6.25% - 20px); }
  .span16 .span2 {
    width: calc(12.5% - 20px); }
  .span16 .span3 {
    width: calc(18.75% - 20px); }
  .span16 .span4 {
    width: calc(25% - 20px); }
  .span16 .span5 {
    width: calc(31.25% - 20px); }
  .span16 .span6 {
    width: calc(37.5% - 20px); }
  .span16 .span7 {
    width: calc(43.75% - 20px); }
  .span16 .span8 {
    width: calc(50% - 20px); }
  .span16 .span9 {
    width: calc(56.25% - 20px); }
  .span16 .span10 {
    width: calc(62.5% - 20px); }
  .span16 .span11 {
    width: calc(68.75% - 20px); }
  .span16 .span12 {
    width: calc(75% - 20px); }
  .span16 .span13 {
    width: calc(81.25% - 20px); }
  .span16 .span14 {
    width: calc(87.5% - 20px); }
  .span16 .span15 {
    width: calc(93.75% - 20px); }
  .span16 .span16 {
    width: calc(100% - 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; }
  .span17 .span1 {
    width: calc(5.88235% - 20px); }
  .span17 .span2 {
    width: calc(11.76471% - 20px); }
  .span17 .span3 {
    width: calc(17.64706% - 20px); }
  .span17 .span4 {
    width: calc(23.52941% - 20px); }
  .span17 .span5 {
    width: calc(29.41176% - 20px); }
  .span17 .span6 {
    width: calc(35.29412% - 20px); }
  .span17 .span7 {
    width: calc(41.17647% - 20px); }
  .span17 .span8 {
    width: calc(47.05882% - 20px); }
  .span17 .span9 {
    width: calc(52.94118% - 20px); }
  .span17 .span10 {
    width: calc(58.82353% - 20px); }
  .span17 .span11 {
    width: calc(64.70588% - 20px); }
  .span17 .span12 {
    width: calc(70.58824% - 20px); }
  .span17 .span13 {
    width: calc(76.47059% - 20px); }
  .span17 .span14 {
    width: calc(82.35294% - 20px); }
  .span17 .span15 {
    width: calc(88.23529% - 20px); }
  .span17 .span16 {
    width: calc(94.11765% - 20px); }
  .span17 .span17 {
    width: calc(100% - 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; }
  .span18 .span1 {
    width: calc(5.55556% - 20px); }
  .span18 .span2 {
    width: calc(11.11111% - 20px); }
  .span18 .span3 {
    width: calc(16.66667% - 20px); }
  .span18 .span4 {
    width: calc(22.22222% - 20px); }
  .span18 .span5 {
    width: calc(27.77778% - 20px); }
  .span18 .span6 {
    width: calc(33.33333% - 20px); }
  .span18 .span7 {
    width: calc(38.88889% - 20px); }
  .span18 .span8 {
    width: calc(44.44444% - 20px); }
  .span18 .span9 {
    width: calc(50% - 20px); }
  .span18 .span10 {
    width: calc(55.55556% - 20px); }
  .span18 .span11 {
    width: calc(61.11111% - 20px); }
  .span18 .span12 {
    width: calc(66.66667% - 20px); }
  .span18 .span13 {
    width: calc(72.22222% - 20px); }
  .span18 .span14 {
    width: calc(77.77778% - 20px); }
  .span18 .span15 {
    width: calc(83.33333% - 20px); }
  .span18 .span16 {
    width: calc(88.88889% - 20px); }
  .span18 .span17 {
    width: calc(94.44444% - 20px); }
  .span18 .span18 {
    width: calc(100% - 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; }
  .span19 .span1 {
    width: calc(5.26316% - 20px); }
  .span19 .span2 {
    width: calc(10.52632% - 20px); }
  .span19 .span3 {
    width: calc(15.78947% - 20px); }
  .span19 .span4 {
    width: calc(21.05263% - 20px); }
  .span19 .span5 {
    width: calc(26.31579% - 20px); }
  .span19 .span6 {
    width: calc(31.57895% - 20px); }
  .span19 .span7 {
    width: calc(36.84211% - 20px); }
  .span19 .span8 {
    width: calc(42.10526% - 20px); }
  .span19 .span9 {
    width: calc(47.36842% - 20px); }
  .span19 .span10 {
    width: calc(52.63158% - 20px); }
  .span19 .span11 {
    width: calc(57.89474% - 20px); }
  .span19 .span12 {
    width: calc(63.15789% - 20px); }
  .span19 .span13 {
    width: calc(68.42105% - 20px); }
  .span19 .span14 {
    width: calc(73.68421% - 20px); }
  .span19 .span15 {
    width: calc(78.94737% - 20px); }
  .span19 .span16 {
    width: calc(84.21053% - 20px); }
  .span19 .span17 {
    width: calc(89.47368% - 20px); }
  .span19 .span18 {
    width: calc(94.73684% - 20px); }
  .span19 .span19 {
    width: calc(100% - 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; }
  .span20 .span1 {
    width: calc(5% - 20px); }
  .span20 .span2 {
    width: calc(10% - 20px); }
  .span20 .span3 {
    width: calc(15% - 20px); }
  .span20 .span4 {
    width: calc(20% - 20px); }
  .span20 .span5 {
    width: calc(25% - 20px); }
  .span20 .span6 {
    width: calc(30% - 20px); }
  .span20 .span7 {
    width: calc(35% - 20px); }
  .span20 .span8 {
    width: calc(40% - 20px); }
  .span20 .span9 {
    width: calc(45% - 20px); }
  .span20 .span10 {
    width: calc(50% - 20px); }
  .span20 .span11 {
    width: calc(55% - 20px); }
  .span20 .span12 {
    width: calc(60% - 20px); }
  .span20 .span13 {
    width: calc(65% - 20px); }
  .span20 .span14 {
    width: calc(70% - 20px); }
  .span20 .span15 {
    width: calc(75% - 20px); }
  .span20 .span16 {
    width: calc(80% - 20px); }
  .span20 .span17 {
    width: calc(85% - 20px); }
  .span20 .span18 {
    width: calc(90% - 20px); }
  .span20 .span19 {
    width: calc(95% - 20px); }
  .span20 .span20 {
    width: calc(100% - 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; }
  .span21 .span1 {
    width: calc(4.7619% - 20px); }
  .span21 .span2 {
    width: calc(9.52381% - 20px); }
  .span21 .span3 {
    width: calc(14.28571% - 20px); }
  .span21 .span4 {
    width: calc(19.04762% - 20px); }
  .span21 .span5 {
    width: calc(23.80952% - 20px); }
  .span21 .span6 {
    width: calc(28.57143% - 20px); }
  .span21 .span7 {
    width: calc(33.33333% - 20px); }
  .span21 .span8 {
    width: calc(38.09524% - 20px); }
  .span21 .span9 {
    width: calc(42.85714% - 20px); }
  .span21 .span10 {
    width: calc(47.61905% - 20px); }
  .span21 .span11 {
    width: calc(52.38095% - 20px); }
  .span21 .span12 {
    width: calc(57.14286% - 20px); }
  .span21 .span13 {
    width: calc(61.90476% - 20px); }
  .span21 .span14 {
    width: calc(66.66667% - 20px); }
  .span21 .span15 {
    width: calc(71.42857% - 20px); }
  .span21 .span16 {
    width: calc(76.19048% - 20px); }
  .span21 .span17 {
    width: calc(80.95238% - 20px); }
  .span21 .span18 {
    width: calc(85.71429% - 20px); }
  .span21 .span19 {
    width: calc(90.47619% - 20px); }
  .span21 .span20 {
    width: calc(95.2381% - 20px); }
  .span21 .span21 {
    width: calc(100% - 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; }
  .span22 .span1 {
    width: calc(4.54545% - 20px); }
  .span22 .span2 {
    width: calc(9.09091% - 20px); }
  .span22 .span3 {
    width: calc(13.63636% - 20px); }
  .span22 .span4 {
    width: calc(18.18182% - 20px); }
  .span22 .span5 {
    width: calc(22.72727% - 20px); }
  .span22 .span6 {
    width: calc(27.27273% - 20px); }
  .span22 .span7 {
    width: calc(31.81818% - 20px); }
  .span22 .span8 {
    width: calc(36.36364% - 20px); }
  .span22 .span9 {
    width: calc(40.90909% - 20px); }
  .span22 .span10 {
    width: calc(45.45455% - 20px); }
  .span22 .span11 {
    width: calc(50% - 20px); }
  .span22 .span12 {
    width: calc(54.54545% - 20px); }
  .span22 .span13 {
    width: calc(59.09091% - 20px); }
  .span22 .span14 {
    width: calc(63.63636% - 20px); }
  .span22 .span15 {
    width: calc(68.18182% - 20px); }
  .span22 .span16 {
    width: calc(72.72727% - 20px); }
  .span22 .span17 {
    width: calc(77.27273% - 20px); }
  .span22 .span18 {
    width: calc(81.81818% - 20px); }
  .span22 .span19 {
    width: calc(86.36364% - 20px); }
  .span22 .span20 {
    width: calc(90.90909% - 20px); }
  .span22 .span21 {
    width: calc(95.45455% - 20px); }
  .span22 .span22 {
    width: calc(100% - 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; }
  .span23 .span1 {
    width: calc(4.34783% - 20px); }
  .span23 .span2 {
    width: calc(8.69565% - 20px); }
  .span23 .span3 {
    width: calc(13.04348% - 20px); }
  .span23 .span4 {
    width: calc(17.3913% - 20px); }
  .span23 .span5 {
    width: calc(21.73913% - 20px); }
  .span23 .span6 {
    width: calc(26.08696% - 20px); }
  .span23 .span7 {
    width: calc(30.43478% - 20px); }
  .span23 .span8 {
    width: calc(34.78261% - 20px); }
  .span23 .span9 {
    width: calc(39.13043% - 20px); }
  .span23 .span10 {
    width: calc(43.47826% - 20px); }
  .span23 .span11 {
    width: calc(47.82609% - 20px); }
  .span23 .span12 {
    width: calc(52.17391% - 20px); }
  .span23 .span13 {
    width: calc(56.52174% - 20px); }
  .span23 .span14 {
    width: calc(60.86957% - 20px); }
  .span23 .span15 {
    width: calc(65.21739% - 20px); }
  .span23 .span16 {
    width: calc(69.56522% - 20px); }
  .span23 .span17 {
    width: calc(73.91304% - 20px); }
  .span23 .span18 {
    width: calc(78.26087% - 20px); }
  .span23 .span19 {
    width: calc(82.6087% - 20px); }
  .span23 .span20 {
    width: calc(86.95652% - 20px); }
  .span23 .span21 {
    width: calc(91.30435% - 20px); }
  .span23 .span22 {
    width: calc(95.65217% - 20px); }
  .span23 .span23 {
    width: calc(100% - 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; }
  .span24 .span1 {
    width: calc(4.16667% - 20px); }
  .span24 .span2 {
    width: calc(8.33333% - 20px); }
  .span24 .span3 {
    width: calc(12.5% - 20px); }
  .span24 .span4 {
    width: calc(16.66667% - 20px); }
  .span24 .span5 {
    width: calc(20.83333% - 20px); }
  .span24 .span6 {
    width: calc(25% - 20px); }
  .span24 .span7 {
    width: calc(29.16667% - 20px); }
  .span24 .span8 {
    width: calc(33.33333% - 20px); }
  .span24 .span9 {
    width: calc(37.5% - 20px); }
  .span24 .span10 {
    width: calc(41.66667% - 20px); }
  .span24 .span11 {
    width: calc(45.83333% - 20px); }
  .span24 .span12 {
    width: calc(50% - 20px); }
  .span24 .span13 {
    width: calc(54.16667% - 20px); }
  .span24 .span14 {
    width: calc(58.33333% - 20px); }
  .span24 .span15 {
    width: calc(62.5% - 20px); }
  .span24 .span16 {
    width: calc(66.66667% - 20px); }
  .span24 .span17 {
    width: calc(70.83333% - 20px); }
  .span24 .span18 {
    width: calc(75% - 20px); }
  .span24 .span19 {
    width: calc(79.16667% - 20px); }
  .span24 .span20 {
    width: calc(83.33333% - 20px); }
  .span24 .span21 {
    width: calc(87.5% - 20px); }
  .span24 .span22 {
    width: calc(91.66667% - 20px); }
  .span24 .span23 {
    width: calc(95.83333% - 20px); }
  .span24 .span24 {
    width: calc(100% - 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.navbar-collapse {
      display: none; }
    #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: 1630px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.navbar-collapse {
      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.navbar-collapse {
      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.navbar-collapse {
      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: 875px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.navbar-collapse {
      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.navbar-collapse {
      display: none; }
    #breakpoints .breakpoint.desktop-medium {
      display: none; }
    #breakpoints .breakpoint.desktop {
      display: none; }
    #breakpoints .breakpoint.tablet {
      display: none; }
    #breakpoints .breakpoint.mobile {
      display: inline-block; } }

/* --- Membership --- */
#membership-form .row {
  margin-bottom: 1em; }

#membership-intro {
  padding: 3em 0 2em 0; }
  #membership-intro .intro {
    margin-bottom: 1em; }
  #membership-intro p:last-child {
    margin-bottom: 0; }
  #membership-intro:empty {
    display: none; }

#memberships-table {
  border-collapse: collapse; }
  #memberships-table.logged-in {
    margin-top: 4em; }
  #memberships-table.fluid {
    width: 100% !important;
    margin-bottom: 2em; }
    #memberships-table.fluid thead th:nth-child(2) {
      border-right: none; }
    #memberships-table.fluid .header-button {
      width: 100% !important; }
  #memberships-table thead th {
    position: relative;
    width: 140px;
    padding-top: 1em;
    vertical-align: bottom;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #FFF;
    border-right: 4px solid #EEE;
    background: #000; }
    #memberships-table thead th:first-child {
      width: 344px;
      vertical-align: middle;
      padding: 30px 40px;
      font-weight: bold;
      font-size: 2rem;
      line-height: 1.2;
      color: #000;
      text-align: left;
      text-transform: capitalize;
      letter-spacing: normal;
      background: transparent; }
    #memberships-table thead th span {
      display: block;
      padding: 6px 0;
      font-weight: bold;
      font-size: 2.25em;
      letter-spacing: normal;
      color: #FFF; }
    #memberships-table thead th .current {
      position: absolute;
      bottom: 100%;
      left: 0;
      width: 100%;
      height: 2em;
      line-height: 2em;
      font-size: .8em;
      color: #FFF;
      background: #333; }
  #memberships-table tbody tr {
    border-bottom: 2px solid #EEE; }
    #memberships-table tbody tr:nth-child(odd) {
      background: #F5F5F5; }
  #memberships-table td {
    padding: 1em 2em;
    font-weight: bold;
    border-left: 4px solid #EEE;
    border-right: 4px solid #EEE; }
    #memberships-table td.check {
      font-weight: bold;
      text-align: center; }
    #memberships-table td.buttons {
      display: none; }
    #memberships-table td img {
      width: 22px !important;
      max-width: none; }
    #memberships-table td:first-child {
      font-weight: bold;
      font-size: .9em; }
  #memberships-table .buttons {
    display: table;
    width: 100%; }
  #memberships-table .header-button {
    display: table-cell;
    padding: 10px 0;
    font-size: .7em;
    text-align: center;
    text-transform: uppercase;
    color: #FFF;
    text-decoration: none;
    border-left: 1px solid #666;
    background: #333; }
    #memberships-table .header-button:first-of-type {
      border-left: none; }
    #memberships-table .header-button:hover {
      text-decoration: none;
      background: #000; }
    #memberships-table .header-button.renew {
      padding: 10px 1px; }

#memberships-table-mobile {
  display: none;
  margin-top: 2em; }
  #memberships-table-mobile .mobile-row {
    margin-bottom: 2em;
    border: 1px solid #EEE; }
    #memberships-table-mobile .mobile-row .heading {
      overflow: auto;
      padding: 0 !important;
      font-weight: bold;
      font-size: 1.25em;
      text-align: center;
      background-color: #000 !important; }
      #memberships-table-mobile .mobile-row .heading .title {
        display: block;
        padding: 10px 20px 5px 20px;
        color: #FFF; }
      #memberships-table-mobile .mobile-row .heading .buttons {
        display: table;
        width: 100%; }
      #memberships-table-mobile .mobile-row .heading .header-button {
        display: table-cell;
        padding: 12px 10px 8px 10px;
        font-size: .6em;
        text-align: center;
        text-transform: uppercase;
        text-decoration: none;
        color: #FFF;
        background: #000;
        border-left: 1px solid #666;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #memberships-table-mobile .mobile-row .heading .header-button:last-child {
          border-right: 1px solid black; }
        #memberships-table-mobile .mobile-row .heading .header-button:hover {
          text-decoration: none;
          background: #333; }
    #memberships-table-mobile .mobile-row .content {
      padding: 1.5em; }
      #memberships-table-mobile .mobile-row .content .check-list {
        margin-bottom: 1.5em !important; }
  #memberships-table-mobile.fluid .mobile-row .heading .header-button:last-child {
    width: 100% !important; }

#membership-join .option {
  margin-top: 2.5em;
  padding: 2.5em 0;
  background-repeat: repeat; }
  #membership-join .option h2 {
    margin-bottom: .35em;
    font-size: 1.5em;
    line-height: 1; }
    #membership-join .option h2 span {
      color: #000; }
  #membership-join .option ul {
    margin: 0; }

#membership-join .actions {
  margin-top: 2.5em; }

#membership-join .group {
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #D8D8D8; }

#membership-join select {
  height: 2.5em;
  font-size: 1em;
  background: #F4F0ED;
  border: 1px solid #D8D8D8; }

#membership-upgrade {
  margin-top: 1em;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
  font-size: .85em;
  background: #EEE; }
  #membership-upgrade ul {
    margin-bottom: 1em; }
  #membership-upgrade p {
    margin-bottom: 0;
    font-weight: bold; }
    #membership-upgrade p input {
      margin-right: .25em; }

#membership-detail aside h2 {
  position: relative;
  margin-bottom: .75em;
  padding-bottom: .75em;
  font-size: 1.125em; }
  #membership-detail aside h2 a, #membership-detail aside h2 a:active, #membership-detail aside h2 a:visited {
    text-decoration: underline; }
    #membership-detail aside h2 a:hover, #membership-detail aside h2 a:active:hover, #membership-detail aside h2 a:visited:hover {
      text-decoration: none; }
  #membership-detail aside h2:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 5000px;
    height: 1px;
    background: #D8D8D8;
    content: ''; }

#membership-detail aside ul {
  margin: 0 0 3em 0;
  padding: 0;
  list-style-type: none;
  font-size: .8em;
  line-height: 1.3; }
  #membership-detail aside ul li {
    margin-bottom: .75em; }
  #membership-detail aside ul.bullets {
    padding-left: 1.5em;
    list-style-type: disc; }

/* --- Account --- */
#account-page ul#account-nav {
  margin: 0 0 2em 0;
  padding: 0 0 2em 0;
  list-style-type: none;
  border-bottom: 1px solid #D8D8D8; }
  #account-page ul#account-nav li {
    display: inline-block;
    margin-right: 1em; }
    #account-page ul#account-nav li .active {
      font-weight: bold; }

#account-page form {
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #D8D8D8; }
  #account-page form:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }

#account-page table {
  width: 100%;
  border-collapse: collapse; }
  #account-page table th {
    padding: .75em;
    text-align: left;
    font-weight: bold;
    font-size: .7em;
    text-transform: uppercase;
    border-bottom: 1px solid #D8D8D8; }
  #account-page table td {
    padding: .75em;
    border-bottom: 1px solid #D8D8D8; }
    #account-page table td:last-child {
      text-align: right; }
  #account-page table tr:nth-child(odd) td {
    background: #F7F7F7; }

/* --- Donation Page --- */
#donate-intro .span8:not(:empty) {
  margin-bottom: 2.5em; }

#donate-intro .span8 img {
  width: 100%;
  margin-bottom: 1em; }

#donate-intro .span8 p {
  margin-bottom: .5em; }

#donate-form .block {
  margin-bottom: 1.5em; }

#donate-form .amount {
  margin-bottom: 1px;
  padding-top: 2em;
  padding-bottom: 2em;
  font-size: 1.1em;
  color: #FFF;
  background: #000; }
  #donate-form .amount p {
    margin-bottom: 0; }
  #donate-form .amount input {
    margin-bottom: 0;
    font-size: 1.5em; }

#donate-form .recurrences {
  float: left;
  width: 100%;
  margin-bottom: 1px; }
  #donate-form .recurrences div {
    float: left;
    width: 25%;
    margin: 0;
    padding: 1.5em 0;
    font-size: .9em;
    text-align: center;
    color: #000;
    background: #EEE;
    border-right: 1px solid #FFF;
    cursor: pointer;
    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-form .recurrences div.selected, #donate-form .recurrences div:hover {
      color: #FFF;
      background: #333; }
    #donate-form .recurrences div:last-of-type {
      border-right: none; }

#donate-form .designate {
  float: left;
  width: 100%;
  margin-bottom: 2.5em;
  padding-top: 2em;
  padding-bottom: 2em;
  background: #EEE; }
  #donate-form .designate label {
    font-size: 1.5em; }

/* --- Staff --- */
#staff-list .member {
  padding: 2em 0 .5em 0;
  border-bottom: 1px solid #D8D8D8; }
  #staff-list .member .top {
    position: relative;
    margin-bottom: 2em; }
    #staff-list .member .top h2 {
      margin-bottom: .3em; }
    #staff-list .member .top p {
      margin-bottom: .3em; }
    #staff-list .member .top:last-child {
      margin-bottom: 0; }
    #staff-list .member .top .span11 .inner {
      position: absolute;
      top: 50%;
      transform: translate(0, -50%); }
      #staff-list .member .top .span11 .inner h2, #staff-list .member .top .span11 .inner p {
        position: relative;
        left: 10px; }
  #staff-list .member:last-child {
    border-bottom: none; }

/* --- Board of Directors --- */
#board-list h2 {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #D8D8D8; }

/* --- Blog --- */
#blog-entries h1, #blog-entries h2 {
  margin-bottom: .25em;
  font-size: 2.25em; }

#blog-entries .entry {
  padding: 2em 0 .5em 0;
  border-bottom: 1px solid #D8D8D8; }
  #blog-entries .entry .date {
    font-size: .9em;
    color: #666; }
  #blog-entries .entry:first-child {
    padding-top: 0;
    border-bottom: none; }

#blog-entries form {
  margin-bottom: 2em;
  padding: 2em 0 1.8em 0;
  background-color: #EEE; }
  #blog-entries form input[type="text"], #blog-entries form textarea {
    background-color: #FFF; }
  #blog-entries form .g-recaptcha {
    margin-bottom: 1em; }

#blog-comments-list {
  position: relative;
  top: -20px; }
  #blog-comments-list .comment {
    margin-bottom: 0;
    padding: 2em 0;
    color: #666;
    border-bottom: 1px solid #D8D8D8; }
    #blog-comments-list .comment p {
      margin-bottom: 0 !important; }
      #blog-comments-list .comment p.name {
        color: #000; }
  #blog-comments-list #blog-all-comments {
    float: left;
    margin-top: 1em;
    font-size: 1.2em; }

#blog-right {
  float: right; }
  #blog-right #blog-filters {
    margin-bottom: 2em; }
    #blog-right #blog-filters select {
      width: 100%;
      margin-bottom: .75em; }

/* --- News --- */
#news-entries h1.detail {
  margin-bottom: .25em; }

#news-entries .entry {
  padding: 2em 0 .5em 0;
  border-top: 1px solid #D8D8D8; }
  #news-entries .entry .date {
    font-size: .9em;
    color: #666;
    font-style: italic; }
  #news-entries .entry h2 {
    margin-bottom: .25em;
    font-size: 1.25em; }
  #news-entries .entry.featured h2 {
    font-size: 1.75em; }

#news-entries article.entry {
  padding-top: 0;
  border-top: none; }

#news-right {
  float: right; }
  #news-right #news-filters {
    margin-bottom: 2em; }
    #news-right #news-filters select {
      width: 100%;
      margin-bottom: .75em; }

/* --- Forms --- */
.custom .actions {
  margin-top: 2em; }

/* --- Jobs --- */
#jobs-left {
  padding-top: 2em; }
  #jobs-left .entry {
    padding: 2em 0 .5em 0;
    border-top: 1px solid #D8D8D8; }
    #jobs-left .entry .details {
      font-size: .9em;
      color: #666; }
    #jobs-left .entry:first-child {
      margin-top: 0;
      padding-top: 0;
      border-top: none; }

#job-apply {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #D8D8D8; }

/* --- Calendar --- */
#calendar {
  /* --- List View --- */
  /* --- Calendar View --- */ }
  #calendar .lucy-wrapper, #calendar #layout-7030 {
    position: relative; }
  #calendar h1 {
    display: inline-block;
    margin: 0 .3em 1em .3em;
    font-weight: 500;
    line-height: 1; }
  #calendar .icon-arrow-left, #calendar .icon-arrow-right {
    position: relative;
    top: -8px;
    display: inline-block;
    color: #000;
    font-size: 10px;
    text-decoration: none;
    vertical-align: middle; }
  #calendar #calendar-header {
    width: 100%;
    height: 41px;
    margin-bottom: 2em;
    background: #727272; }
    #calendar #calendar-header ul {
      float: left;
      margin: 0;
      padding-left: 0;
      list-style-type: none; }
      #calendar #calendar-header ul.right {
        position: absolute;
        top: 0;
        right: 0; }
      #calendar #calendar-header ul li {
        display: inline-block;
        margin-right: 1.5em; }
        #calendar #calendar-header ul li:last-child {
          margin-right: 0; }
      #calendar #calendar-header ul a {
        position: relative;
        display: inline-block;
        font-size: .688em;
        font-weight: 500;
        line-height: 41px;
        text-decoration: none;
        text-transform: uppercase;
        color: #B6B6B6;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
        #calendar #calendar-header ul a:hover, #calendar #calendar-header ul a.selected {
          color: #FFF; }
        #calendar #calendar-header ul a .icon-calendar {
          font-size: 14px; }
        #calendar #calendar-header ul a [class*='icon-'] {
          margin-right: .4em; }
        #calendar #calendar-header ul a.print:before {
          font-size: 14px; }
  #calendar .filters {
    position: absolute;
    top: 0;
    right: 0;
    list-style-type: none;
    padding-left: 0;
    padding-top: 10px; }
    #calendar .filters li {
      display: inline-block; }
    #calendar .filters a {
      padding-right: 1em;
      font-size: .875em;
      color: #000; }
      #calendar .filters a:last-of-type {
        padding-right: 0; }
      #calendar .filters a.all {
        margin-right: 1em;
        border-right: 1px solid #D8D8D8; }
      #calendar .filters a.active {
        font-weight: 700; }
  #calendar #list {
    border-bottom: 1px solid #D8D8D8; }
    #calendar #list .event {
      position: relative;
      display: block;
      color: #000;
      text-decoration: none; }
      #calendar #list .event .date {
        text-align: center;
        text-transform: uppercase;
        color: #FFF;
        background: #000;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
        #calendar #list .event .date p {
          margin-bottom: 0; }
        #calendar #list .event .date .month {
          width: 100%;
          height: 21px;
          margin-bottom: 2.5em;
          font-size: .7em;
          font-weight: 700;
          line-height: 21px;
          background: #727272; }
        #calendar #list .event .date .day {
          font-size: 2.25em;
          font-weight: 500;
          line-height: 1; }
        #calendar #list .event .date .time {
          margin-bottom: 2.5em;
          font-size: .7em;
          font-weight: 400; }
      #calendar #list .event .details .inner {
        position: absolute;
        top: 50%;
        transform: translate(0, -50%); }
      #calendar #list .event .details p {
        position: relative;
        left: 10px;
        margin-bottom: 0;
        font-weight: 300; }
        #calendar #list .event .details p.title {
          font-size: 1.13em;
          font-weight: 500; }
      #calendar #list .event:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 1px solid #D8D8D8;
        border-bottom: none;
        content: ''; }
      #calendar #list .event:hover {
        background: #FAFAFA; }
  #calendar #grid #events-calendar {
    position: relative;
    width: 100%;
    padding: 0;
    border-collapse: collapse; }
    @media only print {
      #calendar #grid #events-calendar {
        width: 100% !important; } }
    #calendar #grid #events-calendar th {
      padding: .8em 1em;
      color: #727272;
      font-size: .688em;
      text-align: center;
      font-weight: 400;
      text-transform: uppercase; }
      @media only print {
        #calendar #grid #events-calendar th {
          color: #000; } }
    #calendar #grid #events-calendar td {
      padding: 1em;
      vertical-align: top;
      border: 1px solid #D8D8D8; }
      @media only print {
        #calendar #grid #events-calendar td {
          border-color: #000; } }
      #calendar #grid #events-calendar td.current {
        background-color: #fafafa; }
        #calendar #grid #events-calendar td.current .day {
          color: #333; }
      #calendar #grid #events-calendar td.weekend {
        background-color: #ededed; }
      #calendar #grid #events-calendar td p {
        font-size: .75em;
        font-weight: 500;
        margin-bottom: .8em; }
        #calendar #grid #events-calendar td p.day {
          font-size: .688em;
          font-weight: 700;
          color: #000; }
        #calendar #grid #events-calendar td p.time {
          margin-bottom: .3em;
          font-size: .688em; }
      #calendar #grid #events-calendar td:hover {
        background-color: #e6e6e6; }
      @media only print {
        #calendar #grid #events-calendar td a {
          color: #000;
          text-decoration: none; } }

/* --- Event Sidebar ---*/
.side-event {
  font-size: .85em; }
  .side-event img {
    width: 100%;
    margin-bottom: 1em; }
  .side-event h3 {
    margin-bottom: 1em;
    font-size: 1.75em; }
  .side-event .date {
    margin-bottom: .25em;
    color: #666; }

/* --- Special Event --- */
#event-header {
  position: relative;
  width: 100%;
  height: 18em;
  padding-top: 10em;
  background-size: cover;
  background-position: 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; }
  #event-header .lucy-wrapper, #event-header #layout-7030 {
    position: relative;
    z-index: 1; }
  #event-header h1 {
    margin: 0;
    font-size: 3em;
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
  #event-header .date {
    font-size: 1.375em;
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
  #event-header:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/event-header-shadow.png) repeat-x bottom left;
    content: ''; }

#event-nav {
  width: 100%;
  margin-bottom: 4em;
  padding: .75em 0;
  background: #727272; }
  #event-nav ul {
    padding-left: 0;
    margin-bottom: 0;
    list-style-type: none; }
    #event-nav ul a {
      display: inline-block;
      margin-right: 1em;
      font-size: .7em;
      text-transform: uppercase;
      color: #bfbfbf;
      text-decoration: none; }
      #event-nav ul a:hover, #event-nav ul a.selected {
        text-decoration: underline;
        color: #FFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }

#special-event .date-location {
  margin-bottom: 3em;
  font-size: .9em; }
  #special-event .date-location .headline {
    margin-bottom: 0;
    font-size: 1.75em; }
  #special-event .date-location iframe {
    width: 100%;
    height: 160px; }

/* --- Tickets --- */
#event-tickets {
  margin-top: 3em; }
  #event-tickets h2 {
    font-size: 1.5em; }
  #event-tickets form {
    padding: 1.5em 0;
    border-top: 1px solid #D8D8D8; }
    #event-tickets form:last-of-type {
      border-bottom: 1px solid #D8D8D8; }
    #event-tickets form .title, #event-tickets form .amount {
      margin-bottom: .5em;
      font-size: 1.125em; }
    #event-tickets form select {
      font-size: .7em;
      text-align: center;
      border: 1px solid #D8D8D8;
      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; }
    #event-tickets form p:last-child {
      margin-bottom: 0; }
    #event-tickets form button, #event-tickets form .button, #event-tickets form .cart-button {
      font-size: .85em; }
  #event-tickets .attendees {
    display: none;
    padding-top: 2em; }
    #event-tickets .attendees p {
      margin-bottom: 1em; }

/* --- Sponsorships --- */
#sponsorship-table {
  width: 100%;
  margin: 2.5em 0 4em 0;
  border-bottom: 1px solid #D8D8D8;
  border-right: 1px solid #D8D8D8;
  border-collapse: collapse; }
  #sponsorship-table thead tr td {
    vertical-align: top;
    border-bottom: 7px solid #D8D8D8; }
    #sponsorship-table thead tr td:first-child {
      width: 250px;
      vertical-align: bottom; }
    #sponsorship-table thead tr td.level {
      position: relative;
      text-align: center;
      border-left: 7px solid #D8D8D8;
      border-top: 1px solid #D8D8D8; }
      #sponsorship-table thead tr td.level .inner {
        position: relative; }
      #sponsorship-table thead tr td.level.first {
        border-left-width: 1px; }
        #sponsorship-table thead tr td.level.first .current {
          left: -1px;
          border-left-width: 1px; }
      #sponsorship-table thead tr td.level.last {
        border-right: 1px solid #D8D8D8; }
        #sponsorship-table thead tr td.level.last .current {
          border-right-width: 1px; }
  #sponsorship-table thead h2 {
    position: relative;
    margin-bottom: .4em;
    line-height: 1;
    font-size: 1.5em;
    font-weight: normal; }
    #sponsorship-table thead h2 span {
      position: absolute;
      bottom: 0;
      right: 10px;
      font-size: .846em;
      font-weight: 600; }
  #sponsorship-table thead .title {
    margin: 2.9em 0 0 0;
    font-size: .7em;
    font-weight: 500;
    color: #B6B6B6;
    text-transform: uppercase; }
    #sponsorship-table thead .title span {
      display: inline-block;
      font-size: .75em;
      color: #999; }
  #sponsorship-table thead .price {
    display: inline-block;
    margin-top: .5em;
    margin-bottom: 1em;
    padding-top: .5em;
    font-size: 1.25em;
    font-weight: 500;
    color: #000; }
  #sponsorship-table tbody tr.alt td {
    background: #F8F7F7; }
  #sponsorship-table tbody tr td {
    padding: .75em;
    text-align: center;
    border-left: 7px solid #D8D8D8; }
    #sponsorship-table tbody tr td.benefit {
      padding: 1.5em;
      font-weight: 500;
      font-size: .75em;
      line-height: 1.4;
      text-align: left;
      border-left: 1px solid #D8D8D8; }
    #sponsorship-table tbody tr td.last {
      border-right: 7px solid #D8D8D8; }

/* --- Mobile Sponsorship --- */
#sponsorship-listing {
  display: none;
  float: left;
  width: 100%;
  margin: 2.692em 0 1.538em 0; }
  #sponsorship-listing .level {
    float: left;
    width: 100%;
    margin-bottom: 1.538em; }
    #sponsorship-listing .level .title {
      margin: 0;
      padding: 1em 0;
      font-size: 1.23em;
      text-align: center;
      text-transform: uppercase;
      color: #000;
      font-weight: 600;
      background: #F8F7F7;
      border: 1px solid #D8D8D8;
      border-bottom: none;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      #sponsorship-listing .level .title span {
        color: #000;
        font-weight: normal; }
    #sponsorship-listing .level ul {
      float: left;
      width: 100%;
      margin: 0;
      padding: 2em;
      list-style: none;
      border: 1px solid #D8D8D8;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      #sponsorship-listing .level ul li {
        position: relative;
        margin-top: 1.38em;
        padding-left: 2em;
        line-height: 1.3; }
        #sponsorship-listing .level ul li:first-child {
          margin: 0; }
        #sponsorship-listing .level ul li:before {
          position: absolute;
          top: 0;
          left: 0;
          font-family: 'icomoon';
          content: '\e936'; }
    #sponsorship-listing .level .desc {
      float: left;
      width: 100%;
      margin: 0;
      padding: 2em;
      list-style: none;
      border: 1px solid #D8D8D8;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }

/* --- Gallery --- */
#event-gallery .span6 {
  margin-bottom: 10px; }

/* --- Auction Items --- */
#event-auction .item {
  margin-top: 2.5em;
  padding-bottom: 2.5em;
  border-bottom: 1px solid #D8D8D8; }
  #event-auction .item h2 {
    margin-bottom: .2em;
    font-size: 1.5em; }
  #event-auction .item p {
    font-size: .85em; }
  #event-auction .item .value {
    font-size: 1.12em;
    font-weight: 400;
    color: #000; }
  #event-auction .item .provider p {
    font-weight: 500;
    color: #000; }
  #event-auction .item:last-child {
    padding-bottom: 0;
    border-bottom: none; }

/* --- Standard Event Detail --- */
#event-left h1 {
  margin-bottom: 0; }

#event-left .dates {
  font-size: 1.3em; }

#event-left .when-where {
  color: #666; }

#event-right h2 {
  margin-bottom: .5em;
  font-size: 1.5em; }

#event-right .location {
  margin-bottom: 3em; }

/* --- Campaigns --- */
#campaign-header {
  position: relative;
  width: 100%;
  padding: 5em 0 3em 0;
  background-size: cover;
  background-position: 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; }
  #campaign-header .lucy-wrapper, #campaign-header #layout-7030 {
    position: relative;
    z-index: 1; }
  #campaign-header h1 {
    margin: 0;
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
  #campaign-header .subtitle {
    font-size: 1.3em;
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
  #campaign-header:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/campaign-header-overlay.png) repeat-x bottom left;
    background-size: cover;
    content: ''; }
  #campaign-header .thermometer {
    position: relative;
    height: 3em;
    line-height: 3em;
    border: 1px solid #FFF; }
    #campaign-header .thermometer .fill {
      top: 0;
      left: 0;
      height: 3em;
      background: #CF102D;
      overflow: hidden; }
      #campaign-header .thermometer .fill p {
        float: right;
        margin: 0 1em 0 0;
        color: #FFF;
        line-height: 3em; }

#campaign-nav {
  background: #000; }
  #campaign-nav ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    #campaign-nav ul li {
      display: inline-block; }
      #campaign-nav ul li a, #campaign-nav ul li a:active, #campaign-nav ul li a:visited {
        display: block;
        padding: .75em;
        line-height: 1;
        color: #FFF;
        text-decoration: none; }
        #campaign-nav ul li a.active, #campaign-nav ul li a:active.active, #campaign-nav ul li a:visited.active {
          background: #333; }

#campaign .span7 h2 {
  font-size: 2em; }

/* --- Document Sharing --- */
#documents-left {
  padding-top: 2em; }
  #documents-left h1 a {
    float: right;
    margin-top: 1em;
    font-size: .5em;
    font-weight: normal; }
  #documents-left h3 {
    margin-bottom: .5em; }
  #documents-left ul {
    width: 100%;
    margin: 0 0 1.5em 0;
    padding: 0;
    list-style-type: none; }
    #documents-left ul li {
      padding: .5em; }
      #documents-left ul li:nth-child(odd) {
        background-color: #F5F5F5; }
    #documents-left ul a {
      text-decoration: none; }
      #documents-left ul a:hover {
        text-decoration: underline; }

/* --- FAQs --- */
#faqs {
  padding-top: 2em; }
  #faqs .faq {
    margin-bottom: 2em; }
    #faqs .faq h2 {
      font-size: .85em; }

/* --- Sponsors --- */
#sponsor-grid {
  float: left;
  width: 100%; }
  #sponsor-grid h2 {
    float: left;
    width: 100%; }
  #sponsor-grid .sponsor {
    float: left;
    display: inline;
    width: 10em;
    height: 10em;
    line-height: 10em;
    margin: 0 3em 3em 0; }
    #sponsor-grid .sponsor img {
      vertical-align: middle; }
    #sponsor-grid .sponsor.text {
      font-size: 1.2em;
      text-align: center;
      background-color: #F1F1F1; }
    #sponsor-grid .sponsor.last {
      margin-right: 0 !important; }

/* --- Video Page --- */
#videos {
  padding-top: 2em; }
  #videos .video .image {
    width: 100%;
    margin-bottom: 10px;
    padding-bottom: 65%;
    background-size: cover;
    background-position: center; }
  #videos .video p {
    height: 28px;
    line-height: 100%;
    font-size: 1.2em; }

/* --- Quick Polls --- */
.poll {
  float: left;
  width: 100%; }
  .poll ul {
    float: left;
    width: 100%;
    padding: 0 !important;
    list-style-type: none; }
    .poll ul li {
      float: left;
      width: 100%;
      margin-bottom: 1em;
      font-size: 1.1em; }
      .poll ul li .response {
        float: left;
        width: 100%;
        margin-bottom: .5em; }
      .poll ul li input {
        float: left;
        display: inline;
        margin-right: .3em; }
      .poll ul li .bar {
        position: relative;
        float: left;
        display: inline;
        width: 82%;
        height: 1em;
        border: 1px solid #D8D8D8;
        background-color: #FAFAFA;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        .poll ul li .bar .fill {
          position: absolute;
          top: 0;
          left: 0;
          height: 1em;
          font-size: 1px;
          line-height: 1px; }
          .poll ul li .bar .fill.color1 {
            background-color: #333; }
          .poll ul li .bar .fill.color2 {
            background-color: #333; }
          .poll ul li .bar .fill.color3 {
            background-color: #333; }
      .poll ul li .percent {
        float: left;
        display: inline;
        width: 18%;
        text-align: center;
        vertical-align: baseline; }

/* --- Store  --- */
#lucy-cart-nav-wrapper {
  margin-bottom: 2em;
  padding: 2em 0;
  background: #F9F9F9; }

#lucy-cart-nav {
  display: table;
  width: 100%;
  height: 3.5em;
  line-height: 3.5em;
  margin: 0;
  padding: 0;
  font-size: 1em;
  list-style-type: none;
  table-layout: fixed;
  border-collapse: collapse;
  background: #FFF;
  overflow: hidden;
  border-radius: 1.75em;
  -moz-border-radius: 1.75em;
  -webkit-border-radius: 1.75em;
  -o-border-radius: 1.75em;
  -ms-border-radius: 1.75em;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  #lucy-cart-nav li {
    display: table-cell; }
    #lucy-cart-nav li.last {
      background: #EEE;
      border-top-right-radius: 1.75em;
      -moz-border-top-right-radius: 1.75em;
      -webkit-border-top-right-radius: 1.75em;
      -o-border-top-right-radius: 1.75em;
      -ms-border-top-right-radius: 1.75em;
      -moz-background-clip: "padding-box";
      -webkit-background-clip: "padding-box";
      -o-background-clip: "padding-box";
      -ms-background-clip: "padding-box";
      border-bottom-right-radius: 1.75em;
      -moz-border-bottom-right-radius: 1.75em;
      -webkit-border-bottom-right-radius: 1.75em;
      -o-border-bottom-right-radius: 1.75em;
      -ms-border-bottom-right-radius: 1.75em;
      -moz-background-clip: "padding-box";
      -webkit-background-clip: "padding-box";
      -o-background-clip: "padding-box";
      -ms-background-clip: "padding-box"; }
      #lucy-cart-nav li.last a:before, #lucy-cart-nav li.last span:before {
        background: #FFF; }
    #lucy-cart-nav li a, #lucy-cart-nav li span {
      display: block;
      text-decoration: none;
      text-align: center;
      vertical-align: text-bottom; }
      #lucy-cart-nav li a:before, #lucy-cart-nav li span:before {
        position: relative;
        top: -2px;
        display: inline-block;
        width: 2em;
        height: 2em;
        margin: 0 .5em 0 0;
        font-size: .6em;
        font-family: 'icomoon' !important;
        line-height: 2em;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        color: #FFF;
        background: #EEE;
        content: "\e914";
        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; }
    #lucy-cart-nav li.complete {
      background: #EEE; }
    #lucy-cart-nav li.complete a:before, #lucy-cart-nav li.complete span:before {
      background: #000; }

#lucy-cart table {
  width: 100%;
  border-collapse: collapse; }
  #lucy-cart table th {
    padding: .5em 1em;
    text-align: left;
    border-bottom: 1px solid #D8D8D8; }
  #lucy-cart table td {
    padding: 1.5em 1em;
    vertical-align: middle; }
  #lucy-cart table tr.pitch td {
    color: #FFF;
    background: #000; }
    #lucy-cart table tr.pitch td input[type=text] {
      width: 100px; }
    #lucy-cart table tr.pitch td input[type=checkbox] {
      top: 0;
      margin: 0 !important; }
    #lucy-cart table tr.pitch td:first-child, #lucy-cart table tr.pitch td:last-child {
      padding: 3em 2em; }
  #lucy-cart table tbody td {
    border-bottom: 1px solid #D8D8D8; }
    #lucy-cart table tbody td p {
      margin-bottom: 0; }
      #lucy-cart table tbody td p.title {
        font-size: 1.25em; }
    #lucy-cart table tbody td select, #lucy-cart table tbody td input[type=text] {
      width: 85px;
      margin-bottom: 0 !important;
      padding-right: .5em; }
    #lucy-cart table tbody td:last-child {
      text-align: right; }

#lucy-cart #lucy-cart-update, #lucy-cart #cart-coupon-apply {
  display: none; }

#lucy-checkout .billing-box {
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #D8D8D8; }

#lucy-checkout #shipping-header h2 {
  display: inline-block;
  margin-right: 1em; }

#lucy-checkout #shipping-header div {
  display: inline-block; }

#cart .headers {
  padding-bottom: 1em;
  font-size: 1.1em;
  color: #000;
  line-height: 1.2;
  font-weight: bold;
  border-bottom: 1px solid #D8D8D8; }

#cart .item {
  position: relative;
  padding: 1em 0;
  min-height: 3em;
  font-size: 1.1em;
  border-bottom: 1px solid #D8D8D8; }
  #cart .item [class*='span'] {
    position: static; }
  #cart .item p, #cart .item input, #cart .item select {
    margin-bottom: 0; }
  #cart .item select {
    width: 3em;
    height: 2.5em;
    font-size: 1em;
    border: 1px solid #D8D8D8; }
  #cart .item .inner, #cart .item .remove {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%); }
  #cart .item .sub-title {
    font-size: .9em; }
  #cart .item .remove {
    right: 0;
    font-size: 13px;
    text-decoration: none;
    color: #000; }
  #cart .item.no-border {
    border-bottom: none; }

#cart .totals {
  font-size: 1.35em; }

#cart #cart-update {
  display: none;
  padding: 1em 0; }

#cart ul#cart-payments {
  display: table;
  width: 100%;
  margin: 0;
  padding: 0; }
  #cart ul#cart-payments li {
    display: table-cell;
    padding: 1em 0;
    text-align: center;
    color: #FFF;
    font-size: .7em;
    text-transform: uppercase;
    font-weight: bold;
    background: #000;
    cursor: pointer;
    border-right: 1px solid rgba(255, 255, 255, 0.2); }
    #cart ul#cart-payments li.selected {
      color: #000;
      background: #EEE; }
    #cart ul#cart-payments li:last-child {
      border-right: none; }

#cart #cart-actions {
  padding-top: 3em;
  padding-bottom: 3em;
  background: #EEE; }
  #cart #cart-actions .title {
    margin-bottom: 1em;
    padding-bottom: .5em;
    font-size: 1.25em;
    color: #000;
    line-height: 1.2;
    font-weight: normal;
    border-bottom: 1px solid #D8D8D8; }
  #cart #cart-actions .total {
    margin-bottom: 1em; }
  #cart #cart-actions .amount {
    font-weight: normal; }
  #cart #cart-actions .cart-button {
    width: 100% !important;
    margin-top: 1em;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center; }
  #cart #cart-actions input {
    background: #FFF; }
  #cart #cart-actions #cart-coupon {
    padding-top: 1em; }
    #cart #cart-actions #cart-coupon input {
      width: 160px;
      margin: 0; }
    #cart #cart-actions #cart-coupon .button, #cart #cart-actions #cart-coupon .cart-button {
      float: right;
      display: inline-block;
      padding: 10px 12px; }

.cart-button {
  display: inline-block; }

/* --- Checkout --- */
#checkout .billing-box {
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #D8D8D8; }

#checkout #shipping-header h2 {
  display: inline-block;
  margin-right: 1em; }

#checkout #shipping-header div {
  display: inline-block; }

/* --- Products --- */
#products-list .product {
  margin-bottom: 2em;
  text-align: center;
  line-height: 1.3;
  color: #000;
  text-decoration: none; }
  #products-list .product img {
    width: 100%;
    margin-bottom: 1em; }
  #products-list .product p {
    margin-bottom: 0; }
  #products-list .product .title {
    font-size: 1.1em;
    font-weight: bold; }

#product-detail h1 {
  margin-bottom: 0;
  font-size: 2em;
  font-weight: bold; }

#product-detail .price {
  font-size: 1.1em; }

#product-detail .thumbs {
  margin-bottom: 2.5em; }
  #product-detail .thumbs img {
    cursor: pointer;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #product-detail .thumbs img.active {
      border: 2px solid #CF102D; }

#product-detail input, #product-detail select {
  display: inline-block;
  margin-left: 10px; }

#product-detail .button, #product-detail .cart-button {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  text-align: center; }

/* --- Social Widget --- */
#social-widget {
  word-wrap: break-word;
  background: #FFF;
  border: 1px solid #D8D8D8;
  overflow: hidden; }
  #social-widget .icons {
    position: relative;
    z-index: 2;
    height: 3em;
    padding: 0 1em;
    text-align: center;
    font-size: 1.1em;
    line-height: 3em;
    background: #FFF;
    box-sizing: border-box;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.3); }
    #social-widget .icons span {
      display: inline-block;
      margin: 0 .5em;
      line-height: 1;
      cursor: pointer; }
      #social-widget .icons span.active:after {
        position: absolute;
        top: 100%;
        width: 0;
        height: 0;
        margin-left: -.8em;
        border-style: solid;
        border-width: 6px 5px 0 5px;
        border-color: #FFF transparent transparent transparent;
        content: ''; }
      #social-widget .icons span.icon-youtube:after {
        margin-left: -18px; }
  #social-widget .pages {
    position: relative;
    z-index: 1; }
    #social-widget .pages .page {
      display: none;
      width: 100%;
      height: 500px;
      overflow: scroll; }
      #social-widget .pages .page:first-child {
        display: block; }
      #social-widget .pages .page.facebook {
        text-align: center; }
      #social-widget .pages .page.instagram .post, #social-widget .pages .page.youtube .post, #social-widget .pages .page.vimeo .post {
        display: block;
        width: 100%;
        padding-bottom: 1.25em;
        color: #000;
        text-decoration: none;
        border-bottom: 1px solid #D8D8D8;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #social-widget .pages .page.instagram .post .video, #social-widget .pages .page.youtube .post .video, #social-widget .pages .page.vimeo .post .video {
          position: relative;
          width: 100%;
          height: 0;
          margin-bottom: .8em;
          padding-bottom: 56.25%;
          background-size: cover;
          background-position: center;
          cursor: pointer; }
          #social-widget .pages .page.instagram .post .video:before, #social-widget .pages .page.youtube .post .video:before, #social-widget .pages .page.vimeo .post .video:before {
            position: absolute;
            top: 50%;
            left: 50%;
            z-index: 1;
            margin-top: -1.5em;
            margin-left: -1.5em;
            width: 3em;
            height: 3em;
            background: rgba(0, 0, 0, 0.6);
            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; }
          #social-widget .pages .page.instagram .post .video:after, #social-widget .pages .page.youtube .post .video:after, #social-widget .pages .page.vimeo .post .video:after {
            position: absolute;
            top: 50%;
            left: 50%;
            z-index: 2;
            width: 0;
            height: 0;
            margin: -8px 0 0 -5px;
            border-style: solid;
            border-width: 8px 0 8px 12px;
            border-color: transparent transparent transparent #FFF;
            content: ''; }
          #social-widget .pages .page.instagram .post .video.playing:before, #social-widget .pages .page.instagram .post .video.playing:after, #social-widget .pages .page.youtube .post .video.playing:before, #social-widget .pages .page.youtube .post .video.playing:after, #social-widget .pages .page.vimeo .post .video.playing:before, #social-widget .pages .page.vimeo .post .video.playing:after {
            display: none; }
          #social-widget .pages .page.instagram .post .video iframe, #social-widget .pages .page.youtube .post .video iframe, #social-widget .pages .page.vimeo .post .video iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%; }
        #social-widget .pages .page.instagram .post img, #social-widget .pages .page.youtube .post img, #social-widget .pages .page.vimeo .post img {
          width: 100%;
          margin-bottom: .8em; }
        #social-widget .pages .page.instagram .post p, #social-widget .pages .page.youtube .post p, #social-widget .pages .page.vimeo .post p {
          margin-bottom: .35em;
          padding: 0 1em;
          font-size: .8em;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; }
        #social-widget .pages .page.instagram .post .date, #social-widget .pages .page.youtube .post .date, #social-widget .pages .page.vimeo .post .date {
          float: right; }

/* --- Sajari Search --- */
#search-box, .sj-result-summary {
  display: none; }

.sj-paginator {
  margin: 1em 0;
  text-align: center; }
  .sj-paginator > div {
    display: inline;
    padding: 10px;
    color: #777;
    font-weight: bold;
    cursor: pointer;
    user-select: none; }
    .sj-paginator > div.current {
      color: #333; }
    .sj-paginator > div.disabled {
      color: #AAA; }
    .sj-paginator > div:hover {
      color: #9d9d9d; }

.sj-result {
  border-bottom: 1px solid #D8D8D8;
  clear: both; }

.sj-result-list > * {
  padding: 1.5em 0; }

.sj-result-list:first-child {
  padding: 0; }

.sj-result-title {
  margin-top: 0;
  color: #CF102D !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .sj-result-title a {
    color: #CF102D; }
    .sj-result-title a:hover {
      text-decoration: underline; }

.sj-result-description {
  margin-bottom: .3em !important;
  color: #000;
  overflow-wrap: break-word; }

.sj-result-url {
  margin: 0 !important;
  font-size: .8em;
  color: #CF102D;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .sj-result-url a {
    color: #121212; }

.sj-result-image-container {
  float: left;
  width: 100px; }
  .sj-result-image-container img {
    max-height: 90px;
    max-width: 90px; }

/* --- Slideshow Styles for lucy.slideshow.js --- */
.lucy-slideshow {
  position: relative;
  width: 100%;
  height: 0;
  margin-bottom: 2em;
  padding-bottom: 52.066116%;
  background: #EEE;
  overflow: hidden; }
  .lucy-slideshow .slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    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; }
    .lucy-slideshow .slider .slide {
      position: relative;
      float: left;
      display: inline;
      line-height: 0; }
      .lucy-slideshow .slider .slide img {
        width: 100%; }
      .lucy-slideshow .slider .slide p {
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0;
        margin-bottom: 0;
        padding: 1.5em;
        line-height: 1.2;
        color: #FFF;
        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 .thumbs {
    position: absolute;
    bottom: -21%;
    left: 0;
    width: 100%;
    height: 21%;
    background: #FFF;
    background: rgba(255, 255, 255, 0.8);
    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 .thumbs .images {
      height: 100%;
      margin: 0 35px;
      padding: 0 1%;
      text-align: center;
      font-size: 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; }
      .lucy-slideshow .thumbs .images .image {
        position: relative;
        display: inline-block;
        width: 20%;
        height: 100%;
        padding: 2% 1%;
        overflow: hidden;
        cursor: pointer;
        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 .thumbs .images .image .inner {
          position: relative;
          width: 100%;
          height: 100%;
          background-size: cover;
          background-position: top center; }
        .lucy-slideshow .thumbs .images .image.selected .inner:after {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          border: 3px solid #CF102D;
          content: '';
          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 .previous, .lucy-slideshow .next {
    position: absolute;
    top: 50%;
    left: 0;
    width: 2em;
    height: 4em;
    margin-top: -2em;
    text-indent: -9999px;
    background: #CF102D;
    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 #FFF transparent transparent; }
    .lucy-slideshow .previous:hover, .lucy-slideshow .next:hover {
      background: #b70e28; }
  .lucy-slideshow .next {
    left: auto;
    right: 0; }
    .lucy-slideshow .next:after {
      border-width: 4px 0 4px 5px;
      border-color: transparent transparent transparent #FFF; }
  .lucy-slideshow:hover .thumbs {
    bottom: 0; }

/* --- Search Form --- */
#search-form {
  position: fixed;
  z-index: 19;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1.5rem 0;
  background: #FFF;
  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-sizing: border-box;
  box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1); }
  #search-form .field {
    margin-right: 1rem;
    margin-bottom: 0; }
    #search-form .field:last-of-type {
      margin-right: 0; }
  #search-form .field--text {
    flex: 3; }
    #search-form .field--text input {
      width: 100%; }
    #search-form .field--text input::placeholder {
      position: relative;
      top: .1rem;
      font-size: 1.5rem;
      font-weight: 300;
      color: #636363;
      line-height: 1; }
    #search-form .field--text .label--float {
      top: -.2rem;
      left: 0;
      padding-left: 2rem; }
    @media only screen and (max-width: 1125px) {
      #search-form .field--text {
        flex: 1; } }
  #search-form input {
    border-top-style: none;
    border-right-style: none;
    border-left-style: none; }
    #search-form input:focus {
      outline: none;
      border-bottom: 1px solid #CF102D; }
  #search-form .control {
    position: relative; }
    #search-form .control input {
      padding-top: 1.35rem;
      padding-bottom: .7rem;
      padding-left: 2rem; }
      #search-form .control input::placeholder {
        position: relative;
        top: -.2rem; }
        @media only screen and (max-width: 1920px) {
          #search-form .control input::placeholder {
            font-size: 1vw; } }
        @media only screen and (max-width: 1440px) {
          #search-form .control input::placeholder {
            font-size: .85rem; } }
  #search-form .search-icon {
    position: absolute;
    top: 50%;
    left: 0;
    width: 21px;
    transform: translate(0, -50%); }
  #search-form .button, #search-form .cart-button {
    padding: 1.25rem .75rem;
    min-width: 8rem; }
    @media only screen and (max-width: 525px) {
      #search-form .button, #search-form .cart-button {
        padding: 1.25rem .75rem;
        min-width: auto;
        font-size: .875rem; } }
  #search-form.open {
    top: 8.125rem; }
    @media only screen and (max-width: 1630px) {
      #search-form.open {
        top: 6.875rem; } }

/* --- Skip To Content --- */
.skip {
  position: absolute;
  top: -100px;
  left: 0;
  z-index: 102;
  padding: .5em;
  text-decoration: none;
  line-height: 1;
  font-size: .8em;
  color: #FFF !important;
  background: #CF102D;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }
  .skip:focus {
    top: 0;
    outline: none;
    -moz-outline: none; }

/* --- Mobile Menu --- */
#mobile-menu {
  position: fixed;
  z-index: 4;
  display: none;
  top: 100px;
  width: 100%;
  height: calc(100vh - 75px);
  overflow: scroll;
  background: #FFF; }
  #mobile-menu #search-form-mobile {
    width: 100%;
    background: #EEE; }
    #mobile-menu #search-form-mobile input {
      width: 100%;
      padding: 1.5em;
      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: 1em; }
    #mobile-menu .inner ul {
      margin: 0 0 1em 0 !important;
      padding: 0 !important;
      list-style-type: none; }
    #mobile-menu .inner .primary {
      font-size: 1.5em; }
  @media only screen and (max-width: 525px) {
    #mobile-menu {
      top: 75px; } }

/* --- Add to Cart Popup --- */
#cart-add-popup {
  position: fixed;
  z-index: 3;
  width: 300px;
  padding: 2em;
  background: #FFF;
  text-align: left;
  border-bottom: 3px solid #CF102D;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  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;
    text-transform: none; }
    #cart-add-popup p.title {
      margin-bottom: 0; }
    #cart-add-popup p.subtitle {
      margin-bottom: 1em; }
    #cart-add-popup p.subtotal {
      margin-bottom: 1.5em;
      font-weight: bold;
      font-size: .9em; }
  #cart-add-popup .button, #cart-add-popup .cart-button {
    display: inline-block;
    margin-right: .5em;
    font-size: .6em; }

#quick-links {
  display: none;
  width: 100%;
  margin-bottom: 1em; }
  #quick-links select {
    width: 100%; }
  @media only screen and (max-width: 875px) {
    #quick-links {
      display: block; } }

.site-by-form {
  width: 100%;
  margin-top: 2em;
  padding: 1em 0;
  border-top: 1px solid #FFF;
  text-align: center; }
  .site-by-form a {
    text-decoration: none; }

.front .is-block {
  display: block; }

.front .is-flex {
  display: flex; }

.front .is-column {
  flex-direction: column; }

.front .is-inline {
  display: inline; }

.front .is-inline-block {
  display: inline-block; }

.front .is-hidden {
  display: none; }

.front .is-absoulte {
  position: absolute; }

.front .is-relative {
  position: relative; }

.front .z-1 {
  z-index: 1; }

.front .is-marginless {
  margin: 0; }

.front .is-paddingless {
  padding: 0; }

.front .is-full-width {
  width: 100%; }

.front .is-full-height {
  height: 100%; }

.front .is-multiline {
  flex-wrap: wrap; }

.front .is-h-centered {
  justify-content: center; }

.front .is-v-centered {
  align-items: center; }

.front .items-bottom {
  align-items: flex-end; }

.front .is-equally-spaced {
  flex: 1; }

.front .gutter-margin-right {
  margin-right: 20px; }

.front .gutter-margin-left {
  margin-left: 20px; }

.front .whitespace-no-wrap {
  white-space: nowrap; }

.front .is-size-1, .front h1 {
  font-size: 4.5rem; }

.front .is-size-2, .front h2 {
  font-size: 3rem; }
  @media only screen and (max-width: 875px) {
    .front .is-size-2, .front h2 {
      font-size: 2.5rem; } }
  @media only screen and (max-width: 525px) {
    .front .is-size-2, .front h2 {
      font-size: 2rem; } }

.front .is-size-3, .front h3 {
  font-size: 2.125rem; }
  @media only screen and (max-width: 875px) {
    .front .is-size-3, .front h3 {
      font-size: 2rem; } }
  @media only screen and (max-width: 525px) {
    .front .is-size-3, .front h3 {
      font-size: 1.875rem; } }

.front .is-size-4, .front h4 {
  font-size: 1.5rem; }

.front .is-size-5, .front h5 {
  font-size: 1.125rem; }

.front .is-size-6, .front h6, .front .item-block__content {
  font-size: 1rem; }

.front .is-x-large, .front .is-size-xlarge {
  font-size: 8rem; }
  @media only screen and (max-width: 1920px) {
    .front .is-x-large, .front .is-size-xlarge {
      font-size: 6.8vw; } }
  @media only screen and (max-width: 525px) {
    .front .is-x-large, .front .is-size-xlarge {
      font-size: 2.4rem; } }

.front .is-size-xsmall {
  font-size: .875rem; }

.front .has-text-primary {
  color: #CF102D; }

.front .has-text-white, .front .figure__caption {
  color: #FFF; }

.front .has-text-dark {
  color: #000; }

.front .has-links-primary a {
  color: #CF102D; }

.front .has-links-white a {
  color: #FFF; }
  .front .has-links-white a:focus {
    outline: 1px solid #FFF; }

.front .has-links-dark a {
  color: #000; }

.front .underline-under {
  text-underline-position: under; }
  @media only screen and (max-width: 525px) {
    .front .underline-under {
      text-underline-position: auto; } }

.front .has-links-invert a, .front .link-invert {
  text-decoration: none; }
  .front .has-links-invert a:hover, .front .link-invert:hover {
    text-decoration: underline; }

.front .has-text-centered {
  text-align: center; }

.front .title + .subtitle {
  margin-top: -.5rem; }

.front .bg-image {
  background-size: cover;
  background-repeat: no-repeat; }

.front .bg-image--shader {
  position: relative; }
  .front .bg-image--shader::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    content: ''; }
  .front .bg-image--shader:hover::after {
    display: none; }

.front .has-bg-light-gray {
  background-color: #F7F7F7; }

.front .unset-links a, .front .unset-links a:hover {
  text-decoration: none; }

.front .hover-bg-primary:hover {
  background: #CF102D !important; }

.front .section {
  padding: 7rem 0; }
  @media only screen and (max-width: 1125px) {
    .front .section {
      padding: 10vw 0; } }
  @media only screen and (max-width: 525px) {
    .front .section {
      padding: 4rem 0; } }

.front .section--padding-top {
  padding: 7rem 0 0; }

.front .section--small {
  padding: 4.375rem 0; }
  @media only screen and (max-width: 525px) {
    .front .section--small {
      padding: 2.375rem 0; } }

.front .section--small-t {
  padding-top: 4.375rem; }
  @media only screen and (max-width: 525px) {
    .front .section--small-t {
      padding-top: 2.375rem; } }

.front .section--bottom-only {
  padding-top: 0; }

.front .level {
  display: flex;
  align-items: center; }

.front .level__end {
  margin-left: auto; }

.front .hero {
  padding: 10.125rem 0;
  background-size: cover;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 1125px) {
    .front .hero {
      padding: 14vw 0; } }
  @media only screen and (max-width: 525px) {
    .front .hero {
      padding: 4rem 0; } }

.front .hero--shader {
  position: relative; }
  .front .hero--shader::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    content: ''; }

.front .hero__title {
  font-size: 8rem;
  line-height: .9; }
  @media only screen and (max-width: 1920px) {
    .front .hero__title {
      font-size: 6.7vw; } }
  @media only screen and (max-width: 1125px) {
    .front .hero__title {
      font-size: 4.7rem; } }
  @media only screen and (max-width: 525px) {
    .front .hero__title {
      font-size: 4rem; } }

.front .hero__bottom-link {
  margin: 4rem 0 0; }
  @media only screen and (max-width: 1125px) {
    .front .hero__bottom-link {
      margin: 2rem 0 0; } }

.front .list--unstyled {
  list-style: none; }

.front .figure-row {
  margin-top: -7px;
  padding-top: 7px; }

.front .figure-row--flex {
  display: flex; }

.front .figure-row__flex-item {
  flex: 1;
  margin-right: 20px; }
  .front .figure-row__flex-item:last-child {
    margin-right: 0; }

.front .figure {
  position: relative;
  top: 7px;
  border-bottom: 14px solid transparent;
  transition: top .2s, border-color .2s;
  overflow: hidden; }
  .front .figure img {
    width: 100%;
    transition: transform .2s, height .2s; }
  .front .figure a {
    display: block; }
    .front .figure a:focus .title {
      text-decoration: underline; }
  @media screen and (prefers-reduced-motion: no-preference) {
    .front .figure:hover {
      top: 0;
      border-color: #CF102D; }
      .front .figure:hover img {
        transform: scale(1.04); } }
  @media screen and (prefers-reduced-motion: reduce) {
    .front .figure:hover .title {
      text-decoration: underline; } }

@media only screen and (max-width: 875px) {
  .front .figure--home {
    max-height: 30vh; } }

@media only screen and (max-width: 525px) {
  .front .figure--home {
    max-height: 80vh; } }

.front .figure__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 3.43rem 2.25rem 3.13rem;
  background: rgba(0, 0, 0, 0.75);
  box-sizing: border-box; }

.front .figure__caption--small {
  padding: 1rem 1.43rem;
  min-height: 5.94rem; }

.front .date-group, .front .check-group {
  margin-bottom: 1em; }

.front .date-group .select-field {
  display: inline-block;
  width: auto;
  margin-bottom: 1rem;
  margin-right: 20px; }

.front .check-option {
  display: inline-block;
  margin: 0 1rem .5rem 0; }
  .front .check-option input {
    margin-right: .25rem; }

.front .form-title {
  margin-bottom: .75em; }

.front input, .front select, .front textarea {
  display: inline-block;
  margin: 0;
  padding: 1.035rem;
  font-size: 16px;
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  vertical-align: middle;
  background: #FFF;
  border: 1px solid #a5a5a5;
  box-sizing: border-box; }

.front select {
  width: 100%;
  height: 3.56rem;
  padding-right: 3rem;
  border-radius: 0;
  -webkit-appearance: none; }
  .front select select::-ms-expand {
    display: none; }

.front .label {
  font-size: 1rem; }

.front .label--block {
  display: block;
  margin-bottom: .5rem;
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  letter-spacing: 1px; }

.front .label--float {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0.835rem;
  padding: 0 .2rem;
  line-height: 1.4;
  transition: top .1s, opacity .1s, font-size .1s;
  transform: translateY(calc(-50% - .5px));
  opacity: 0;
  pointer-events: none;
  background-color: #FFF; }

.front .label--float-active {
  top: 0;
  font-size: .6875rem;
  transform: translateY(-50%);
  opacity: 1; }

.front .label--float-tight {
  background: transparent; }
  .front .label--float-tight.label--float-active {
    transform: translateY(45%); }

.front .float {
  top: 0;
  margin-left: 0 !important;
  font-size: .6875rem;
  transform: translateY(-50%);
  opacity: 1; }

.front input[type="checkbox"]:first-child, .front input[type="radio"]:first-child {
  margin-left: 0; }

.front input[type="file"] {
  padding: 0 !important;
  border: none; }

.front .field {
  position: relative;
  margin-bottom: 1.5rem; }

.front .field--text input::placeholder {
  color: #000;
  transition: opacity .1s; }

.front .field--text input:focus::placeholder {
  opacity: 0; }

.front .field--textarea label {
  margin-left: 1rem; }

.front .field--note p {
  margin-bottom: 0;
  font-weight: bold; }

.front .select-field {
  position: relative; }
  .front .select-field::after {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    content: url("/images/icons/arrow-down.svg");
    pointer-events: none; }

.front .field--has-error {
  margin-bottom: 0; }
  .front .field--has-error input {
    color: #CF102D;
    border-color: #CF102D; }
  .front .field--has-error label {
    color: #CF102D; }

.front .field--has-icons-right input {
  padding-right: 2.5rem; }

.front .field__help {
  margin: .2rem 0 .5rem 1rem;
  color: #CF102D;
  font-size: .6875rem;
  overflow: hidden;
  text-overflow: ellipsis; }
  .front .field__help span {
    white-space: nowrap; }

.front .control {
  position: relative; }

.front .control__icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.front .control__icon--left {
  left: 1rem; }

.front .control__icon--right {
  right: 1rem; }

.front .has-icon-left {
  padding-left: 2.5rem; }

.front .has-icon-right {
  padding-right: 2.5rem; }

/* --- Site Wide Styles --- */
.front .page-overlay {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6); }

.front .page-overlay--cover-nav {
  z-index: 20; }

.front .page-overlay--darker {
  background: rgba(0, 0, 0, 0.8); }

.front .bordered-title {
  display: inline-block;
  margin: .27em 0;
  padding: .27em 0;
  border-top: .09375em solid;
  border-bottom: .09375em solid; }

.front .moving-links li {
  margin-bottom: 1em; }

.front .moving-link, .front .moving-links a {
  text-decoration: none;
  transition: padding .2s, color .2s; }
  .front .moving-link:hover, .front .moving-links a:hover {
    padding-left: 1em;
    color: #CF102D; }

@media screen and (prefers-reduced-motion: no-preference) {
  .front .arrow-link:hover .arrow {
    width: 1rem; } }

.front .arrow {
  position: relative;
  display: inline-block;
  width: .7rem;
  height: 1px;
  margin-left: .5em;
  background-color: #CF102D;
  vertical-align: middle;
  transition: width .2s; }
  .front .arrow::after {
    position: absolute;
    right: -2px;
    width: 4px;
    height: 4px;
    border-right: 1px solid;
    border-top: 1px solid;
    border-color: #CF102D;
    transform: translate(-1px, -2px) rotate(45deg);
    transform-origin: center;
    content: ''; }

.front .arrow--white {
  background-color: #FFF; }
  .front .arrow--white::after {
    border-color: #FFF; }

.front .info-box--collection {
  height: 26rem;
  margin-bottom: 20px; }
  .front .info-box--collection .subtitle {
    margin-bottom: 0;
    line-height: 1.5; }
  @media only screen and (max-width: 875px) {
    .front .info-box--collection {
      height: 23rem; } }
  @media only screen and (max-width: 525px) {
    .front .info-box--collection {
      min-height: auto;
      margin-bottom: 3rem; }
      .front .info-box--collection img {
        margin-bottom: .5rem; } }

.front .info-box__top {
  width: 100%;
  margin-bottom: 1.5em; }

.front .info-box__heading {
  margin-bottom: 1em; }

.front .item-block {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 12.32rem;
  margin-bottom: 20px;
  padding: 1.5rem 1.25rem;
  border: 1px solid #DDDCDF;
  border-radius: .625rem;
  background: #F9F9F9;
  box-sizing: border-box; }
  .front .item-block .item-block__emphasis {
    margin-bottom: .5rem; }

.front .item-block--button {
  cursor: pointer; }
  .front .item-block--button:hover {
    color: #FFF;
    background: #CF102D; }
    .front .item-block--button:hover .item-block__emphasis {
      color: #FFF; }

.front .item-block__content {
  font-family: "Trade Gothic LT W01 Bold";
  letter-spacing: 1px;
  line-height: 1.5; }

.front .item-block__emphasis {
  display: block;
  color: #CF102D;
  font-size: 2.6875rem;
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1; }

.front .item-block__emphasis--small {
  font-size: 2rem; }

.front .item-block__membership-title {
  display: block;
  margin-bottom: 1rem; }

.front .item-block__emphasis--inline {
  display: inline-block; }

.front .item-block__emphasis--middle {
  vertical-align: middle; }

.front .item-block__emphasis--medium {
  font-size: 3.9rem; }

.front .item-block__emphasis--large {
  font-size: 4.5625rem; }

.front .item-block__emphasis--white {
  color: #FFF; }

.front .toc a:last-of-type .toc__row {
  border-bottom: 1px solid #D8D8D8; }
  @media only screen and (max-width: 875px) {
    .front .toc a:last-of-type .toc__row {
      border-bottom: none; } }

.front .toc__row {
  padding: 2.81rem 0;
  border-top: 1px solid #D8D8D8; }
  @media only screen and (max-width: 525px) {
    .front .toc__row {
      flex-wrap: wrap; }
      .front .toc__row .toc__image {
        display: block;
        width: auto;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 1rem; }
      .front .toc__row .toc__left {
        width: 100%; } }

.front .toc__image, .front .toc__left {
  display: inline-block;
  margin-right: 2.125rem; }

@media only screen and (max-width: 525px) {
  .front .toc__text {
    width: 100%; } }

.front .toc__text :last-child {
  margin-bottom: 0; }

.front .tooltip {
  position: relative;
  display: inline-block;
  vertical-align: top; }

.front .tooltip__button {
  width: 1rem;
  height: 1rem;
  color: #CF102D;
  font-size: .8rem;
  font-weight: bold;
  line-height: 0;
  background: #FFF;
  border-radius: 50%;
  border: 1px solid; }
  .front .tooltip__button:active, .front .tooltip__button.active {
    background-color: #CF102D;
    color: #FFF; }
    .front .tooltip__button:active + .tooltip__content, .front .tooltip__button.active + .tooltip__content {
      display: block; }

.front .tooltip__button--spaced {
  margin-left: .5rem; }

.front .tooltip__content {
  position: absolute;
  top: 2rem;
  left: -20vw;
  z-index: 120;
  display: none;
  padding: 2rem;
  color: #000;
  width: 40rem;
  max-width: 40vw;
  background: #FFF;
  box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1);
  text-align: left;
  box-sizing: border-box; }
  .front .tooltip__content p {
    font-size: .875rem;
    margin-bottom: 1.125rem; }
  .front .tooltip__content :last-child {
    margin-bottom: 0; }
  @media only screen and (max-width: 875px) {
    .front .tooltip__content {
      max-width: 80vw; } }
  @media only screen and (max-width: 525px) {
    .front .tooltip__content {
      left: -40vw; } }

.front .tooltip__content--anchor-left {
  left: 0; }

.front .table-container {
  max-width: 100%;
  overflow-x: scroll; }
  .front .table-container::-webkit-scrollbar {
    -webkit-appearance: none;
    height: 7px; }
  .front .table-container::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); }

.front .table {
  width: 100%;
  margin-bottom: .7rem;
  border-collapse: collapse; }
  .front .table .table__data, .front .table .fixed-col {
    min-width: 128px;
    padding: 1.8rem 1rem;
    font-size: .875rem;
    line-height: 1.1;
    box-sizing: border-box; }
    @media only screen and (max-width: 875px) {
      .front .table .table__data, .front .table .fixed-col {
        padding: 1rem .5rem;
        min-width: 100px; } }
  .front .table .location-title {
    font-family: "Trade Gothic LT W01 Bold";
    text-transform: uppercase; }
    .front .table .location-title span {
      color: #000; }
  .front .table .fixed-col {
    position: absolute;
    pointer-events: none; }
    .front .table .fixed-col.hours__buttons {
      pointer-events: initial; }
  .front .table .table-week-grid {
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem 3rem; }
    @media only screen and (max-width: 875px) {
      .front .table .table-week-grid {
        gap: 1.5rem; } }
    .front .table .table-week-grid .weekday-container {
      display: flex;
      justify-content: space-between;
      gap: .1rem; }
    .front .table .table-week-grid .date, .front .table .table-week-grid .weekday {
      font-family: "Trade Gothic LT W01 Bold";
      text-transform: uppercase; }
    .front .table .table-week-grid .time {
      min-width: 11.2rem; }
      .front .table .table-week-grid .time a {
        display: block;
        padding: .2rem 0;
        font-size: .75rem; }
    .front .table .table-week-grid .date-separator {
      flex: 1;
      align-self: flex-start;
      margin: .7rem .2rem .1rem;
      height: 1px;
      border-bottom: 2px #D8D8D8 dotted; }
  .front .table td:nth-child(1) > .fixed-col, .front .table td:nth-child(1) > .table__data {
    width: 140px; }
  .front .table tr:nth-child(odd) td, .front .table tr:nth-child(odd) td > .fixed-col {
    background: #F7F7F7; }
  .front .table tr:nth-child(even) td, .front .table tr:nth-child(even) td > .fixed-col {
    background: #FFF; }
  .front .table .thead tr td {
    background: #FFF; }

.front .callout-box {
  margin-top: 3rem;
  background-color: #F7F7F7;
  border: 1px solid #dedede; }
  .front .callout-box img {
    max-height: 18rem;
    max-width: 100%; }
  .front .callout-box .img-wrapper {
    background: #FFF; }
  .front .callout-box .callout-inner {
    padding: 2.5rem; }

.front .lucy-slideshow .slider {
  transition: none !important; }
  .front .lucy-slideshow .slider .slide.caption::before {
    background: none;
    background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6) 10%, transparent 25%); }
  .front .lucy-slideshow .slider .slide.caption p {
    top: 0;
    bottom: auto;
    padding: 1rem;
    text-align: left;
    font-weight: bold; }

.front .lucy-slideshow .previous, .front .lucy-slideshow .next {
  width: 3.125rem;
  height: 3.125rem; }
  .front .lucy-slideshow .previous::after, .front .lucy-slideshow .next::after {
    content: none; }
  .front .lucy-slideshow .previous > span, .front .lucy-slideshow .next > span {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #FFF;
    text-indent: initial;
    transform: translate(-50%, -50%); }

.front .list-row {
  margin-bottom: .33rem; }
  .front .list-row:last-of-type {
    margin-bottom: 1em; }
  .front .list-row [class^="icon-"] {
    display: inline-block;
    width: 1.7rem;
    color: #CF102D;
    font-size: 1.2rem; }

.front .list-row__text {
  line-height: 1.6; }

* {
  margin: 0;
  padding: 0;
  border: 0; }
  *:focus:hover {
    outline: none; }
  *:focus:not(:hover) {
    outline: 1px solid #000; }

@media only screen and (max-width: 525px) {
  html {
    font-size: 14px; } }

/* --- Body Styles --- */
.front h1 {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front .page-title-alt.small {
  font-size: 3rem; }
  @media only screen and (max-width: 525px) {
    .front .page-title-alt.small {
      font-size: 2.5rem; } }

@media only screen and (max-width: 525px) {
  .front .page-title-alt {
    font-size: 3rem; } }

.front h2 {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front h3 {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front h4 {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front h5 {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front h6, .front .item-block__content {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front .heading {
  margin-bottom: .5em;
  font-family: "Trade Gothic LT W01 Bold";
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400; }

.front p {
  margin-bottom: 2.25rem;
  line-height: 2; }

.front .photo-caption {
  margin-top: -.5em;
  font-size: .6875em;
  font-style: italic;
  color: #999; }

.front ul {
  margin-bottom: 2rem;
  padding-left: 2rem; }

.front hr {
  margin: 2rem 0;
  border-bottom: 1px solid #D8D8D8; }

.front th {
  text-align: left; }

.front .intro {
  margin-bottom: 2.25rem;
  font-size: 1.5em;
  line-height: 1.75; }
  @media only screen and (max-width: 525px) {
    .front .intro {
      margin-bottom: 3rem;
      font-size: 1.25rem; } }

.front .page-image {
  margin-bottom: 2em; }

.front a[name] {
  position: relative;
  top: -180px;
  display: block; }

blockquote {
  margin-bottom: 2em;
  font-size: 1.375em;
  line-height: 1.5;
  font-style: italic; }

.center {
  text-align: center; }

/* --- 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: #FFF;
  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 {
  font-size: 1.1em;
  font-weight: bold;
  color: #F00; }

/* --- Social Networking --- */
.social {
  padding-left: 0 !important;
  list-style-type: none; }
  .social li {
    margin-bottom: 2em;
    padding-bottom: 2em;
    background-repeat: no-repeat;
    background-position: 0 2px;
    border-bottom: 1px solid #D8D8D8; }
    .social li img {
      width: 100%;
      margin-bottom: .75em;
      vertical-align: middle; }
    .social li .source {
      display: inline-block;
      margin-bottom: 1em;
      font-size: .75em;
      font-weight: bold;
      line-height: 18px; }
      .social li .source [class*='icon-'] {
        display: inline-block;
        margin-right: .25em;
        font-size: 1.5em; }
      .social li .source a {
        color: #000; }
        .social li .source a:hover {
          text-decoration: none; }

/* --- Pagination Styles --- */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 2em 0;
  text-align: center; }

.pagination a {
  margin: 0 3px;
  font-size: 1.2em; }

.pagination a.selected {
  font-weight: bold; }

.pager-left {
  margin-right: 1rem; }
  .pager-left span {
    color: #FFF; }

.pager-right {
  margin-left: 1rem; }
  .pager-right span {
    color: #FFF; }

/* --- Buttons and Links --- */
.front a {
  color: #CF102D;
  text-decoration: underline; }
  .front a:hover {
    text-decoration: none; }

.front button {
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  cursor: pointer;
  background: transparent; }

.front .button, .front .cart-button {
  position: relative;
  display: inline-block;
  padding: .75rem 1rem;
  font-size: .875em;
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: .1em;
  color: #FFF;
  background-color: #CF102D;
  text-decoration: none;
  cursor: pointer; }
  .front .button:hover, .front .cart-button:hover {
    top: -1px;
    background-color: #e71232;
    box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1); }
  .front .button:focus, .front .cart-button:focus {
    text-decoration: underline; }

.front .button--fixed-size {
  width: 2.75rem;
  height: 2.75rem;
  text-align: center;
  box-sizing: border-box; }

.front .button--large {
  font-size: 1.25rem;
  padding: 1rem 1.25rem;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }

.front .button--gray {
  color: #000;
  background-color: #EEE; }
  .front .button--gray:hover {
    background-color: #fbfbfb; }

.front .button--back {
  margin: 2px 0 3rem 2px;
  color: #CF102D; }
  .front .button--back:hover, .front .button--back:focus {
    box-shadow: none;
    outline: 1px solid #D8D8D8;
    outline-offset: 0px; }
  @media only screen and (max-width: 525px) {
    .front .button--back {
      margin-bottom: 2rem; } }

.front .button--round {
  border-radius: 50%; }

.front .button--mr-1 {
  margin-right: 1rem; }

/* --- Custom Dropdowns --- */
.lucy-dropdown {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 2em;
  margin-bottom: 1em;
  padding: 0 0 0 10px;
  line-height: 2em;
  text-align: left;
  color: #000;
  text-transform: none;
  border: 1px solid #D8D8D8;
  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;
  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-dropdown span {
    position: relative;
    z-index: 1;
    display: block;
    padding-right: 46px;
    text-align: left;
    overflow: hidden; }
  .lucy-dropdown ul {
    position: absolute;
    top: 100%;
    left: -1px;
    width: 100%;
    height: auto !important;
    max-height: 15em;
    margin: 0 !important;
    padding: 0 !important;
    list-style-type: none;
    line-height: 150%;
    background: #FFF;
    overflow: auto;
    visibility: hidden;
    border: 1px solid #D8D8D8; }
    .lucy-dropdown ul li {
      padding: 0 10px;
      color: #000;
      text-transform: none !important; }
      .lucy-dropdown ul li.selected {
        color: #FFF !important;
        background: #000 !important; }
      .lucy-dropdown ul li:hover {
        background: #EEE; }
  .lucy-dropdown.active ul {
    visibility: visible; }
  .lucy-dropdown:before {
    content: '';
    position: absolute;
    z-index: 0;
    top: -1px;
    right: 0;
    width: 2em;
    height: 2em;
    background: #000; }
  .lucy-dropdown:after {
    content: '';
    position: absolute;
    z-index: 0;
    top: 50%;
    right: .5em;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-style: solid;
    border-width: 5px 6px 0 6px;
    border-color: #FFF transparent transparent transparent; }

/* --- Custom Radio Buttons --- */
div.lucy-radio, div.lucy-check {
  position: relative;
  left: 5px;
  display: inline-block;
  width: .75em;
  height: .75em;
  margin-right: 1em;
  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;
  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; }
  div.lucy-radio.checked, div.checked.lucy-check {
    background: #000; }
  div.lucy-radio:after, div.lucy-check:after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.5em;
    height: 1.5em;
    margin: -.75em 0 0 -.75em;
    border: 1px solid #000;
    content: '';
    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: 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; }

/* --- Custom Check Box --- */
div.lucy-check {
  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; }
  div.lucy-check:after {
    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; }

/* --- Image Viewer --- */
.gallery img {
  cursor: pointer; }

#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: #FFF;
    border-bottom: 1px solid #D8D8D8; }
    #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 #D8D8D8;
      border-right: 1px solid #D8D8D8; }
    #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: #FFF;
      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; }

/* --- Miscellaneous --- */
#recaptcha_widget_div {
  margin-bottom: 10px; }

a img {
  border: none; }

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

.top-space {
  margin-top: 2em; }

.bottom-space {
  margin-bottom: 2em; }

.bottom-space-large {
  margin-bottom: 2.9rem; }

/* --- Page Builder Bucket & Plugin styles --- */
.lucy-bucket.bucket-edge {
  padding: 0; }

.lucy-bucket {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .lucy-bucket[data-padding='top'] {
    padding-top: 0; }
  .lucy-bucket[data-padding='bottom'] {
    padding-bottom: 0; }
  .lucy-bucket[data-padding='both'] {
    padding: 0 0; }
  .lucy-bucket[data-border='1'] {
    border-bottom: 1px solid #D8D8D8; }
  .lucy-bucket.dark, .lucy-bucket.has-image {
    color: #FFF; }
  .lucy-bucket.dark .row:last-child .plugin-output *:last-child, .lucy-bucket.dark .full-width .plugin-output *:last-child, .lucy-bucket.light .row:last-child .plugin-output *:last-child, .lucy-bucket.light .full-width .plugin-output *:last-child, .lucy-bucket.has-image .row:last-child .plugin-output *:last-child, .lucy-bucket.has-image .full-width .plugin-output *:last-child {
    margin-bottom: 0 !important; }
  .lucy-bucket.live[data-height='25'] {
    height: calc(25vh - 8em); }
  .lucy-bucket.live[data-height='50'] {
    height: calc(50vh - 8em); }
  .lucy-bucket.live[data-height='75'] {
    height: calc(75vh - 8em); }
  .lucy-bucket.live[data-height='100'] {
    height: calc(100vh - 8em); }
  .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; }
  .lucy-bucket .plugin-output {
    margin-bottom: 2.25rem; }
  .lucy-bucket .plugin-output.pages .row {
    margin-bottom: 4em;
    padding-bottom: 4em;
    border-bottom: 1px solid #D8D8D8; }
  .lucy-bucket .plugin-output.pages a {
    color: #000; }
  .lucy-bucket .plugin-output.pages img {
    max-width: 94% !important; }
  .lucy-bucket .plugin-output.text table {
    width: 100%;
    margin-bottom: 2rem;
    table-layout: fixed; }
    .lucy-bucket .plugin-output.text table td, .lucy-bucket .plugin-output.text table th {
      padding: .5em; }
      .lucy-bucket .plugin-output.text table td p, .lucy-bucket .plugin-output.text table th p {
        margin-bottom: 0;
        line-height: 1.4; }
  .lucy-bucket .plugin-output.text table, .lucy-bucket .plugin-output.text tr, .lucy-bucket .plugin-output.text td {
    border: 1px solid #D8D8D8;
    border-collapse: collapse; }
  .lucy-bucket .plugin-output.callout a {
    color: inherit;
    text-decoration: none; }
    .lucy-bucket .plugin-output.callout a:hover h3 {
      text-decoration: underline; }
  .lucy-bucket .plugin-output.callout p {
    margin-bottom: 1rem; }
  .lucy-bucket .edge-to-edge .page-image {
    display: block; }

.plugin-output.text p, .editor-content p {
  margin-bottom: 1.125rem; }
  .plugin-output.text p.intro, .editor-content p.intro {
    margin-bottom: 1.5rem; }

.plugin-output.text ul ul, .editor-content ul ul {
  margin-bottom: 0; }

.lucy-container .lucy-bucket:last-child .full-width > *:last-child {
  margin-bottom: 0 !important; }

main :last-child#page-content {
  margin-bottom: 0 !important; }

#page-content {
  margin-bottom: 2.5rem; }

/* --- Full Width Layout --- */
#layout-7030 {
  display: flex; }
  #layout-7030 #content-7030 {
    flex: 4;
    position: relative; }
    #layout-7030 #content-7030 .lucy-wrapper, #layout-7030 #content-7030 #layout-7030 {
      padding: 0 0 0 11vw; }
      @media only screen and (max-width: 875px) {
        #layout-7030 #content-7030 .lucy-wrapper, #layout-7030 #content-7030 #layout-7030 {
          padding: 0 !important; } }
    @media only screen and (max-width: 1440px) {
      #layout-7030 #content-7030 .lucy-wrapper--table, #layout-7030 #content-7030.table-layout .lucy-wrapper, #layout-7030 #content-7030.table-layout #layout-7030 {
        padding: 0 0 0 6vw; } }
  #layout-7030 .layout-7030__main.overflow-hidden {
    overflow: hidden; }
  @media only screen and (max-width: 875px) {
    #layout-7030 {
      display: block; } }

.nav-bar {
  position: fixed;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
  height: 8.125rem;
  background: #FFF;
  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 0 7px 4px rgba(0, 0, 0, 0.1);
  box-sizing: border-box; }
  .nav-bar .nav-bar__row {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 1.8125em 0 1.625em;
    box-sizing: border-box; }
  .nav-bar .nav-bar__right {
    margin-left: auto; }
    .nav-bar .nav-bar__right .active, .nav-bar .nav-bar__right .shelf-active {
      border-bottom: 3px solid #CF102D; }
    .nav-bar .nav-bar__right .shelf-active {
      color: #CF102D !important; }
    .nav-bar .nav-bar__right a:focus {
      outline: none;
      border-bottom: 3px solid #CF102D; }
  @media only screen and (max-width: 1125px) {
    .nav-bar .nav-bar__right--full {
      display: none; } }
  .nav-bar .nav-bar__right--condensed {
    display: none;
    padding: 1rem 0; }
    @media only screen and (max-width: 1125px) {
      .nav-bar .nav-bar__right--condensed {
        display: block; } }
    .nav-bar .nav-bar__right--condensed button {
      min-width: 1.875rem;
      min-height: 1.875rem;
      vertical-align: middle; }
  .nav-bar .nav-bar__minor, .nav-bar .nav-bar__major {
    justify-content: flex-end;
    padding: 0;
    list-style: none; }
    .nav-bar .nav-bar__minor :last-child, .nav-bar .nav-bar__major :last-child {
      margin-right: 0; }
    .nav-bar .nav-bar__minor a, .nav-bar .nav-bar__major a {
      color: #000; }
      .nav-bar .nav-bar__minor a:hover, .nav-bar .nav-bar__major a:hover {
        text-decoration: none;
        border-bottom: 3px solid #CF102D; }
  .nav-bar .nav-bar__minor {
    margin-bottom: .625rem; }
    .nav-bar .nav-bar__minor li {
      margin-right: .7rem;
      font-size: .875rem;
      font-weight: bold;
      letter-spacing: .5px; }
      .nav-bar .nav-bar__minor li.divider {
        margin-right: 1.6rem; }
        .nav-bar .nav-bar__minor li.divider::after {
          position: absolute;
          top: 0px;
          margin: 0 0.8rem;
          width: 1px;
          height: 3.6rem;
          background-color: #D8D8D8;
          content: ''; }
      @media only screen and (max-width: 1630px) {
        .nav-bar .nav-bar__minor li {
          margin-right: .75rem;
          font-size: .8rem; } }
  .nav-bar .nav-icon {
    font-size: .9rem; }
  .nav-bar #mobile-search-wrapper {
    margin-right: 1rem; }
  .nav-bar .nav-bar__major {
    margin: 0; }
    .nav-bar .nav-bar__major li {
      margin-right: 1.25rem;
      font-family: "Trade Gothic LT W01 Bold";
      text-transform: uppercase;
      font-size: 1.375rem; }
      @media only screen and (max-width: 1630px) {
        .nav-bar .nav-bar__major li {
          margin-right: .9rem;
          font-size: 1.23rem; } }
  @media only screen and (max-width: 1630px) {
    .nav-bar {
      height: 6.875rem; }
      .nav-bar .nav-bar__row {
        padding: 1.25rem 0; } }
  @media only screen and (max-width: 875px) {
    .nav-bar .nav-bar__row {
      padding: 1.75rem 0; } }

.front .nav-search {
  position: fixed;
  top: 0.25rem;
  z-index: 19;
  width: 100%;
  height: 7.875rem;
  padding: 2.1875rem 0;
  box-sizing: border-box;
  background: #F7F7F7;
  transition: top .2s; }
  .front .nav-search.expand {
    top: 8.125rem;
    box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1); }
    .front .nav-search.expand .nav-search__toggle {
      transform: translateY(40%); }
    .front .nav-search.expand .nav-search__collapse {
      display: block; }
    .front .nav-search.expand .nav-search__expand {
      display: none; }
    @media only screen and (max-width: 1630px) {
      .front .nav-search.expand {
        top: 6.875rem; } }
  @media only screen and (max-width: 1630px) {
    .front .nav-search {
      height: 6.875rem;
      padding: 1.7rem 0;
      top: 0; } }
  @media only screen and (max-width: 1125px) {
    .front .nav-search {
      top: -11.875rem;
      height: 18.75rem; } }
  @media only screen and (max-width: 525px) {
    .front .nav-search {
      top: -11.875rem;
      height: 18.75rem; } }

.front .search-container {
  position: absolute;
  bottom: 0;
  width: 100%; }

.front .nav-search__toggle {
  position: relative;
  display: block;
  padding: .75rem;
  margin-left: auto;
  font-family: "Trade Gothic LT W01 Bold";
  font-size: .9375rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  background-color: #F7F7F7;
  transform: translateY(100%);
  box-shadow: 0 6px 8px -2px rgba(0, 0, 0, 0.1); }
  .front .nav-search__toggle:focus {
    background-color: #eaeaea;
    outline: none; }
    .front .nav-search__toggle:focus > div {
      border-bottom: 1px solid #000; }
  .front .nav-search__toggle .nav-search__collapse {
    display: none; }
  .front .nav-search__toggle span {
    margin-left: .25rem;
    font-size: .9rem;
    color: #CF102D;
    vertical-align: middle; }
    .front .nav-search__toggle span.icon-minus {
      font-size: .2rem; }

.front #login-li .button, .front #login-li .cart-button {
  padding-left: .4rem;
  padding-right: .4rem;
  color: #FFF !important;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }
  .front #login-li .button:hover, .front #login-li .cart-button:hover {
    border-bottom: none; }

#header-logo {
  color: #000;
  font-size: 2.3125rem;
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  text-decoration: none; }
  @media only screen and (max-width: 1630px) {
    #header-logo {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 1125px) {
    #header-logo {
      font-size: 2.3125rem; } }
  @media only screen and (max-width: 875px) {
    #header-logo {
      font-size: 1.5rem;
      line-height: 1.1; }
      #header-logo span {
        display: block; } }

#navbar-hours {
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  letter-spacing: .05rem; }
  @media only screen and (max-width: 1630px) {
    #navbar-hours {
      font-size: .8rem; } }
  @media only screen and (max-width: 1125px) {
    #navbar-hours {
      display: none; } }

#mobile-nav {
  position: fixed;
  z-index: 2000;
  top: 6.875rem;
  left: 0;
  display: none;
  width: 100%;
  padding: 0 1.5rem 3rem;
  max-height: calc(100vh - 6.875rem - calc(100vh - 100%));
  background-color: #FFF;
  overflow-y: scroll;
  box-sizing: border-box; }
  @media only screen and (max-width: 1630px) {
    #mobile-nav.open {
      display: block; } }
  #mobile-nav .mobile-list {
    margin: 0;
    padding: 0;
    list-style: none; }
  #mobile-nav .mobile-major {
    font-family: "Trade Gothic LT W01 Bold";
    text-transform: uppercase; }
    #mobile-nav .mobile-major li {
      padding: 1.5rem 0;
      border-bottom: 1px solid #D8D8D8;
      font-size: 1.75rem; }
  #mobile-nav .mobile-minor li {
    padding: .93rem 0;
    font-size: 1.5rem; }
  #mobile-nav li.condensed {
    padding: .75rem 0;
    font-size: 1rem;
    letter-spacing: .5px; }
  #mobile-nav li a {
    display: block;
    color: #000; }
  #mobile-nav .hours-item a {
    color: #CF102D;
    font-size: .875rem; }
  #mobile-nav .hours-item .has-text-black {
    color: #000; }
  #mobile-nav .hours-item span {
    margin-right: .5rem; }
  #mobile-nav .mobile-nav-section {
    margin-bottom: 2rem; }
  #mobile-nav .mobile-buttons .button, #mobile-nav .mobile-buttons .cart-button {
    width: 50%;
    text-align: center;
    font-size: .9rem;
    white-space: nowrap; }
  #mobile-nav .mobile-nav__contact {
    padding-top: 3rem;
    border-top: 1px solid #D8D8D8; }
    #mobile-nav .mobile-nav__contact h2 {
      margin-bottom: .75rem; }
    #mobile-nav .mobile-nav__contact ul {
      padding: 0;
      margin-bottom: 3.25rem;
      list-style: none; }
      #mobile-nav .mobile-nav__contact ul:last-child {
        margin: 0; }
    #mobile-nav .mobile-nav__contact a {
      display: inline-block; }
    #mobile-nav .mobile-nav__contact li {
      margin-bottom: .5rem; }

#nav-clock {
  margin-right: .5em; }

#cart-li {
  position: relative; }
  #cart-li .nav-icon::after {
    position: absolute;
    background: radial-gradient(transparent, rgba(0, 0, 0, 0.6));
    content: ''; }

#cart-add-display, #login-display {
  position: fixed;
  z-index: 21;
  padding: 2rem;
  width: 400px;
  border-radius: 10px;
  background: #FFF;
  box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1);
  box-sizing: border-box; }

#login-display {
  z-index: 2000;
  top: 5rem;
  right: 2rem; }
  #login-display ul {
    padding: 0;
    list-style: none; }
  #login-display #login-display-close {
    position: absolute;
    top: 1rem;
    right: 1rem; }

#cart-add-display .cart__button-row .button, #cart-add-display .cart__button-row .cart-button {
  text-align: center;
  color: #FFF;
  flex: 1; }
  #cart-add-display .cart__button-row .button:first-child, #cart-add-display .cart__button-row .cart-button:first-child {
    margin-right: 10px; }

#cart-add-display .cart-add-row {
  padding: 1.5rem 0;
  border-top: 1px solid #D8D8D8; }

#cart-add-display .cart-add-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 1rem; }

@media only screen and (max-width: 1630px) {
  #cart-add-display {
    left: auto !important;
    transform: translateX(2vw);
    max-width: 96vw !important; } }

.front #shelf {
  position: fixed;
  z-index: 11;
  top: -1000px;
  left: 0;
  width: 100%;
  background: #FFF;
  box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1); }
  .front #shelf .button, .front #shelf .cart-button {
    text-align: center; }
  .front #shelf .icon-close {
    position: absolute;
    top: 1em;
    right: 1em;
    cursor: pointer; }
  @media only screen and (max-width: 1125px) {
    .front #shelf {
      display: none; } }

.front .todays-hours-container h3, .front .todays-hours-container p {
  font-size: .875rem; }

.front .todays-hours-container .level {
  margin-bottom: 1.5rem; }

.front .shelf__main {
  padding: 4rem 0 3.625rem; }

.front .shelf__list .shelf__item:last-child {
  margin-bottom: 1rem; }

.front .shelf__bottom {
  padding: .9375rem 0;
  background-color: #F7F7F7; }

.front .shelf__heading {
  display: inline-block;
  margin: 0 2em 0 0;
  line-height: 1.5; }

.front .shelf__time {
  max-width: 9.6rem; }

.front .shelf__divider {
  padding: 0 2vw;
  border-right: 1px solid #D8D8D8; }
  .front .shelf__divider:first-of-type {
    padding-left: 0; }
  .front .shelf__divider:last-of-type {
    padding-right: 0;
    border-right: none; }

.front .shelf__heading--body-font {
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  text-transform: none; }

.front .shelf__directions-heading {
  padding: .9375rem 0;
  letter-spacing: 1px; }

.front .shelf__directions-heading {
  padding: .9375rem 0;
  letter-spacing: 1px; }

.front .shelf__directions-body {
  line-height: 1.6; }

.front .shelf__item {
  margin-bottom: 0;
  padding: .87rem 0;
  line-height: 1.5; }

.front .shelf__item--spaced-border-left {
  margin-left: 3.125rem;
  padding-left: 3.125rem;
  border-left: 1px solid #DDD; }

.front .shelf__item--margin-right {
  margin-right: 1rem; }

.front .shelf__item--tight {
  padding: .5rem 0; }

.front .shelf__item--border-bottom {
  border-bottom: 1px solid #D8D8D8; }

.trail {
  padding: 1rem 0; }
  .trail .trail__item {
    display: inline-block; }
    .trail .trail__item:after {
      display: inline-block;
      margin: 0 .5em;
      font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
      color: #FFF;
      content: "/"; }
    .trail .trail__item:last-child::after {
      display: none; }
  @media only screen and (max-width: 525px) {
    .trail {
      font-size: .8rem; } }

.trail-alt .trail a {
  color: #000;
  text-decoration: underline; }

.trail-alt .trail .trail__item {
  font-size: .875rem;
  font-weight: bold;
  color: #000; }
  .trail-alt .trail .trail__item::after {
    color: #000; }
  .trail-alt .trail .trail__item:last-child {
    font-weight: normal; }
    .trail-alt .trail .trail__item:last-child a {
      text-decoration: none; }

#mobile-nav-toggle {
  display: none;
  padding: .75em 1em;
  color: #CF102D;
  font-weight: bold;
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  background-color: #F7F7F7;
  cursor: pointer;
  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: 875px) {
    #mobile-nav-toggle {
      display: flex; } }
  #mobile-nav-toggle .icon-minus {
    font-size: .25rem; }

.page-nav-container {
  position: sticky;
  top: 12.5rem;
  max-height: calc(100vh - 8.125rem - 70px);
  padding-left: 2px;
  overflow: scroll; }

.page-nav {
  flex: 1;
  position: relative;
  min-width: 254px;
  border-right: 1px solid #D8D8D8; }
  @media only screen and (max-width: 875px) {
    .page-nav #vertical-nav-content {
      display: none;
      width: 100%;
      max-height: 75vh;
      padding: 1em;
      background: #F7F7F7;
      overflow: auto;
      box-sizing: border-box; }
      .page-nav #vertical-nav-content.open {
        display: block; } }
  .page-nav ul {
    margin: 0;
    padding: 0 3rem 0 0;
    list-style-type: none; }
    .page-nav ul li {
      display: block;
      margin-bottom: 1.5em; }
      .page-nav ul li a {
        display: inline-block;
        margin-bottom: 0;
        text-decoration: none; }
        .page-nav ul li a:hover {
          text-decoration: underline; }
        .page-nav ul li a.active {
          color: #CF102D;
          font-weight: bold;
          text-decoration: underline; }
          .page-nav ul li a.active span {
            color: #000; }
      .page-nav ul li ul {
        padding-left: 1.25em;
        font-size: .75em;
        border-left: 1px solid #D8D8D8; }
        .page-nav ul li ul li {
          margin-bottom: 0; }
        .page-nav ul li ul a {
          font-weight: normal; }
      .page-nav ul li:last-child {
        margin-bottom: 0; }
  @media only screen and (max-width: 1440px) {
    .page-nav {
      min-width: 200px; } }
  @media only screen and (max-width: 875px) {
    .page-nav {
      margin-bottom: 3rem;
      border-right: none; } }
  @media only screen and (max-width: 525px) {
    .page-nav {
      margin-bottom: 2rem; } }

.share-this-container {
  margin-right: 3rem; }
  .share-this-container h2 {
    margin-bottom: 1.25rem; }
  .share-this-container .share-this-inner {
    display: flex;
    justify-content: flex-start;
    align-items: center; }
  .share-this-container .share-icon {
    margin-right: 1rem;
    font-size: 1.25rem;
    text-decoration: none; }
  .share-this-container .icon-email {
    font-size: 1.1rem; }

.share-this-container--b-t {
  padding-top: 2.9rem;
  border-top: 1px solid #D8D8D8; }

.share-this-container--b-b {
  padding-bottom: 2.9rem;
  border-bottom: 1px solid #D8D8D8; }

.sidebar-callout {
  margin: 2.875rem 3rem 2.875rem 0; }
  .sidebar-callout:hover .sidebar-callout-title {
    text-decoration: underline; }
  .sidebar-callout .sidebar-callout-title {
    margin-bottom: 1.5rem; }
  .sidebar-callout a {
    text-decoration: none;
    color: #000; }
  .sidebar-callout img {
    display: block;
    width: 100%;
    margin-bottom: 1rem; }

.front .nav-section-title {
  margin-bottom: 2.25rem;
  padding-right: 3rem;
  letter-spacing: .05rem; }
  @media only screen and (max-width: 875px) {
    .front .nav-section-title {
      display: none; } }

.front .page-header {
  position: relative;
  height: 33.75rem;
  background-color: #CF102D;
  background-repeat: no-repeat;
  box-sizing: border-box;
  background-attachment: fixed;
  background-size: 100%;
  background-position: center 8.125rem;
  height: 33.7vw;
  max-height: 540px; }
  .front .page-header .lucy-wrapper, .front .page-header #layout-7030 {
    position: relative;
    z-index: 1; }
  @media only screen and (max-width: 1630px) {
    .front .page-header {
      background-position: center 6.875rem; } }
  @media only screen and (max-width: 875px) {
    .front .page-header {
      min-height: 20rem;
      background-size: auto; } }
  @media (prefers-reduced-motion: reduce) {
    .front .page-header {
      background-position: center !important; } }

.front .page-header--small {
  height: 19.5vw;
  max-height: 19.34rem; }

.front .page-header__title {
  margin: 0;
  color: #FFF;
  line-height: 1.06;
  font-size: calc(2em + 4vw); }

.front .page-header__title--small {
  font-size: calc(1em + 2.6vw); }

.front .page-header__button {
  margin: 1rem 0; }
  @media only screen and (max-width: 875px) {
    .front .page-header__button {
      font-size: .875rem; } }

.front .page-header--has-image:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2));
  content: ''; }

.front .hours-block {
  margin-left: auto;
  min-width: 344px;
  box-shadow: 0 0 7px 4px rgba(0, 0, 0, 0.1); }
  @media only screen and (max-width: 875px) {
    .front .hours-block {
      min-width: 280px; } }
  @media only screen and (max-width: 525px) {
    .front .hours-block {
      margin-top: 3rem;
      margin-left: 0; } }

.front .hours-block__heading {
  padding: 1rem 2.25rem;
  background: #CF102D; }
  @media only screen and (max-width: 875px) {
    .front .hours-block__heading {
      margin-top: 2rem; } }
  .front .hours-block__heading a {
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }

.front .hours-block__main {
  padding: 1rem 2.25rem 1rem;
  background: #FFF; }
  .front .hours-block__main > h3:first-child {
    margin-top: 1rem; }
  .front .hours-block__main h3 {
    margin-bottom: 0; }
  @media only screen and (max-width: 875px) {
    .front .hours-block__main {
      padding: .5rem 1.5rem 1rem; } }

.front .hours-block__row {
  padding: 1rem 0;
  font-size: .9rem;
  border-bottom: 1px solid #D8D8D8; }
  .front .hours-block__row:last-of-type {
    margin-bottom: 1rem;
    border: none; }
  @media only screen and (max-width: 1125px) {
    .front .hours-block__row {
      font-size: 1rem; }
      .front .hours-block__row:last-of-type {
        margin-bottom: .5rem; } }

.front .hours-block__date {
  margin-right: 2rem;
  font-weight: bold; }

.front #exhibition-location {
  margin: 0;
  margin-top: 1rem; }
  .front #exhibition-location a:any-link {
    color: #FFF; }

.front .footer {
  position: relative;
  z-index: 10;
  background-image: url("/images/footer-bg.jpg");
  background-size: cover; }
  .front .footer::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    content: ''; }

.front .footer--donate {
  background: #F7F7F7; }
  .front .footer--donate::before {
    content: none; }
  .front .footer--donate .footer-bottom {
    padding: 1.5rem 0; }
  .front .footer--donate .footer-bottom__legal {
    margin-bottom: .5rem; }

.front #footer-callouts {
  border-top: 1px solid #D8D8D8; }

.front .footer-callout {
  padding: 0 3.125rem;
  border-right: 1px solid #D8D8D8; }
  .front .footer-callout:hover .footer-callout__title, .front .footer-callout a:focus .footer-callout__title {
    text-decoration: underline; }
  .front .footer-callout:first-child {
    padding-left: 0; }
  .front .footer-callout:last-child {
    padding-right: 0;
    border-right: none; }
  @media only screen and (max-width: 1440px) {
    .front .footer-callout {
      padding: 0 2.3rem; } }
  @media only screen and (max-width: 875px) {
    .front .footer-callout {
      padding: 0 0;
      border: none; } }

.front .footer-callout__title {
  line-height: 1.3; }

.front .footer-callout__body {
  line-height: 2; }
  @media only screen and (max-width: 875px) {
    .front .footer-callout__body {
      margin-bottom: 1.5rem; } }

.front .footer-callout__action {
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase; }
  @media only screen and (max-width: 875px) {
    .front .footer-callout__action {
      margin-bottom: 1.5rem;
      padding-bottom: 1.5rem;
      border-bottom: 1px solid #D8D8D8;
      line-height: 1; } }

.front .footer-social {
  margin-bottom: 1.5rem;
  padding: 3.75rem 0 4.875rem;
  border-bottom: 1px solid #D8D8D8; }
  @media only screen and (max-width: 525px) {
    .front .footer-social {
      padding: 3rem 0; } }

.front .footer-nav-heading {
  margin-bottom: 1.5rem;
  font-size: 4.5rem; }
  @media only screen and (max-width: 1920px) {
    .front .footer-nav-heading {
      font-size: 4.5vw; } }
  @media only screen and (max-width: 1125px) {
    .front .footer-nav-heading {
      margin-bottom: 1rem; } }
  @media only screen and (max-width: 875px) {
    .front .footer-nav-heading {
      font-size: 2rem; } }

.front .library-social-container {
  border-left: 1px solid #D8D8D8;
  margin-right: 5.5rem;
  padding: .75rem 0 .75rem .75rem; }
  .front .library-social-container a:hover .library-social__icon {
    transform: scale(1.15); }
  @media only screen and (max-width: 1920px) {
    .front .library-social-container {
      margin-right: 4.5vw; } }
  @media only screen and (max-width: 875px) {
    .front .library-social-container {
      width: 50%;
      margin: 0;
      box-sizing: border-box; } }

.front .library-social__label {
  margin-bottom: .5rem;
  font-family: "Trade Gothic LT W01 Bold";
  font-size: 1rem;
  letter-spacing: .5px;
  text-transform: uppercase; }

.front .library-social__icon {
  display: inline-block;
  margin-right: .5rem;
  font-size: 1.25rem;
  transition: .1s transform; }
  .front .library-social__icon.icon-instagram {
    margin-right: .6rem; }

.front .library-social__icon--blogger {
  position: relative;
  top: 1px;
  width: 1.25rem; }

.front .footer-nav {
  padding: 5.69rem 0;
  border-bottom: 1px solid #D8D8D8; }

.front .footer-nav__minor, .front .footer-nav__major, .front .footer-nav__contact ul {
  padding: 0;
  list-style: none; }

.front .footer-nav__title {
  margin-bottom: 1.25rem; }

.front .footer-nav__minor {
  margin: 0 0 2.5rem 0; }
  .front .footer-nav__minor li {
    margin-bottom: 1rem; }

.front .footer-nav__major {
  margin: 0 0 1.93rem 0; }
  .front .footer-nav__major li {
    margin-bottom: 1.93rem;
    font-family: "Trade Gothic LT W01 Bold";
    text-transform: uppercase;
    letter-spacing: 1px; }
  .front .footer-nav__major .button:hover, .front .footer-nav__major .cart-button:hover {
    text-decoration: none; }

.front .footer-nav__contact ul {
  margin-bottom: 3.25rem; }
  .front .footer-nav__contact ul:last-child {
    margin: 0; }

.front .footer-nav__contact li {
  margin-bottom: .5rem; }

.front .footer-bottom {
  padding: 3rem 0; }
  .front .footer-bottom img {
    max-width: 152px; }

.front .footer-bottom__end {
  text-align: right; }
  @media only screen and (max-width: 525px) {
    .front .footer-bottom__end {
      text-align: left; } }

.front .footer-bottom__legal {
  margin-bottom: 0;
  font-family: "Helvetica Neue", "Helvetica", "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: .685rem;
  font-weight: 300;
  letter-spacing: .5px; }
  @media only screen and (max-width: 525px) {
    .front .footer-bottom__legal {
      margin: 1rem 0; } }

.front .form-icon {
  font-size: 1.2rem; }

.front .footer-alert {
  position: fixed;
  bottom: 0;
  right: 2rem;
  background: #FFF; }

.page-content {
  margin: 7vw 0; }

#lucy-cart table tr.pitch td {
  background: #CF102D; }

.front .grayscale {
  filter: grayscale(1); }

.front .grayscale--hover-color:hover {
  filter: grayscale(0); }

@media only screen and (max-width: 875px) {
  .front #home-info .span8 {
    width: calc(100% - 20px); } }

@media only screen and (max-width: 1125px) {
  .front #home-info .info-box {
    font-size: .9rem; } }

@media only screen and (max-width: 875px) {
  .front #home-info .info-box {
    font-size: 1rem; } }

@media only screen and (max-width: 1125px) {
  .front #home-info .info-box h2 {
    font-size: 1.8rem; } }

@media only screen and (max-width: 875px) {
  .front #home-info .info-box h2 {
    font-size: 2rem; } }

.front .terrell-section {
  padding: 9.6rem 0;
  position: relative;
  background-size: cover;
  background-position: center;
  background-color: #000; }
  .front .terrell-section::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    content: ''; }
    @media only screen and (max-width: 1125px) {
      .front .terrell-section::before {
        left: 0;
        width: 100%; } }
  @media only screen and (max-width: 525px) {
    .front .terrell-section {
      padding: 3.6rem 0; } }

.front .terrell-section-content {
  width: 50%;
  padding-left: 2.5vw;
  margin-left: auto;
  box-sizing: border-box; }
  .front .terrell-section-content h2 {
    margin-bottom: .5rem;
    font-size: 3.6rem; }
    @media only screen and (max-width: 875px) {
      .front .terrell-section-content h2 {
        font-size: 2.125rem; } }
  .front .terrell-section-content h3 {
    margin-bottom: 1.5rem;
    font-size: 1.6875rem; }
    @media only screen and (max-width: 875px) {
      .front .terrell-section-content h3 {
        font-size: 1.125rem; } }
  .front .terrell-section-content .button, .front .terrell-section-content .cart-button {
    min-width: 10rem;
    font-size: 1rem;
    margin-bottom: .5rem; }
    .front .terrell-section-content .button:first-of-type, .front .terrell-section-content .cart-button:first-of-type {
      margin-right: .5rem; }
    @media only screen and (max-width: 525px) {
      .front .terrell-section-content .button:first-of-type, .front .terrell-section-content .cart-button:first-of-type {
        margin-right: 0; } }
  @media only screen and (max-width: 1125px) {
    .front .terrell-section-content {
      width: 100%;
      padding-left: 0; } }

.front .research-tool__icon {
  position: relative;
  left: -.2rem;
  font-size: 1.3rem; }

.front .research-right-container {
  margin-left: auto; }
  @media only screen and (max-width: 525px) {
    .front .research-right-container {
      margin: 1rem 0 0 0; } }

.front .card-icons {
  position: absolute;
  top: 50%;
  right: .5rem;
  font-size: 1.5rem;
  color: #CF102D;
  transform: translateY(-50%); }
  .front .card-icons.small {
    font-size: 1.1rem; }
  .front .card-icons span {
    filter: alpha(opacity=25);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
    -moz-opacity: 0.25;
    -khtml-opacity: 0.25;
    opacity: 0.25;
    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) {
      .front .card-icons span {
        display: none; } }
    .front .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) {
        .front .card-icons span.selected {
          display: block; } }

.front .donate {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  background-size: cover;
  overflow: scroll; }
  @media only screen and (max-width: 875px) {
    .front .donate {
      flex-wrap: wrap; } }

.front .donate__form-container {
  z-index: 2;
  padding: 3.375rem 4vw 3.375rem 4vw;
  min-width: 588px;
  width: 50%;
  order: 2;
  background: #FFF;
  box-sizing: border-box; }
  @media only screen and (max-width: 875px) {
    .front .donate__form-container {
      width: 100%;
      min-width: auto; } }
  @media only screen and (max-width: 525px) {
    .front .donate__form-container {
      padding-bottom: 0; } }

.front .donate__bg-container {
  width: 50%; }
  @media only screen and (max-width: 875px) {
    .front .donate__bg-container {
      width: 100%; } }

@media only screen and (max-width: 875px) {
  .front .donate__bg, .front .donate__bg-content {
    bottom: auto !important; } }

.front .donate__bg {
  position: fixed;
  left: 0;
  width: 50%;
  height: calc(100vh - 8.125rem);
  background-image: url("/images/donate-bg.jpg");
  background-size: cover; }
  @media only screen and (max-width: 1630px) {
    .front .donate__bg {
      height: calc(100vh - 6.875rem); } }
  @media only screen and (max-width: 875px) {
    .front .donate__bg {
      width: 100%;
      height: 50vh; } }
  .front .donate__bg.fol {
    background-image: url("/images/fol-donate-bg.jpg");
    background-position: center right; }

.front .donate__bg-content-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 1;
  width: 50%;
  height: calc(100vh - 8.125rem); }
  .front .donate__bg-content-wrapper::after {
    position: fixed;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.6));
    content: ''; }
  @media only screen and (max-width: 875px) {
    .front .donate__bg-content-wrapper {
      width: 100%;
      height: 50vh; }
      .front .donate__bg-content-wrapper::after {
        bottom: auto;
        height: 50vh; } }

.front .donate__bg-content {
  position: fixed;
  z-index: 1;
  bottom: 0;
  width: 50%;
  padding: 0 7.5rem 4rem;
  box-sizing: border-box; }
  @media only screen and (max-width: 1125px) {
    .front .donate__bg-content {
      width: calc(100% - 588px);
      padding: 0 1.5rem 4rem; }
      .front .donate__bg-content h2 {
        font-size: 1.75rem; }
      .front .donate__bg-content p {
        font-size: 1rem; } }
  @media only screen and (max-width: 875px) {
    .front .donate__bg-content {
      width: 100%;
      bottom: auto; }
      .front .donate__bg-content p {
        margin-bottom: 0; } }
  @media only screen and (max-width: 525px) {
    .front .donate__bg-content {
      padding: 1.5rem 1rem 1rem; }
      .front .donate__bg-content h2 {
        font-size: calc(2em + 4vw); } }

.front .donate__section {
  margin-bottom: 3rem; }

.front .donate__radio-wrapper {
  display: flex;
  flex: auto;
  position: relative;
  margin-right: 20px; }
  .front .donate__radio-wrapper:last-child {
    margin-right: 0; }
  @media only screen and (max-width: 525px) {
    .front .donate__radio-wrapper {
      width: 100%;
      margin: 0 0 .5rem 0; } }

.front .donate__radio {
  position: absolute;
  opacity: 0; }
  .front .donate__radio:checked + .donate__button {
    color: #FFF;
    background: #CF102D; }
  .front .donate__radio:focus + .donate__button {
    outline: 2px solid #000; }

.front .donate__button {
  width: 100%;
  padding: 1.5rem 2.5rem;
  color: #000;
  background: #FFF;
  text-align: center;
  border: 1px solid #D8D8D8; }
  @media only screen and (max-width: 1440px) {
    .front .donate__button {
      padding: 1.25rem 2rem; } }
  @media only screen and (max-width: 875px) {
    .front .donate__button {
      padding: 1.5rem 1rem; } }

.front .donate-field-row {
  display: flex;
  margin-left: -20px; }
  .front .donate-field-row > * {
    flex: 1;
    margin-left: 20px; }
  .front .donate-field-row input {
    width: 100%; }
  @media only screen and (max-width: 525px) {
    .front .donate-field-row {
      flex-wrap: wrap;
      margin-left: -10px; }
      .front .donate-field-row > * {
        flex: auto;
        width: 100%;
        margin-left: 10px; } }

.front #custom-amount {
  width: 2.6rem;
  height: 1rem;
  padding: 0;
  color: #FFF;
  line-height: 0;
  font-size: .875rem;
  font-weight: bold;
  border: none;
  background: transparent; }
  .front #custom-amount:focus {
    outline: none; }

.front .exhibitions-group {
  display: flex;
  align-items: center;
  margin-bottom: 3.125rem; }

.front .exhibitions-group__heading {
  padding-right: 1rem; }

.front .exhibition-outer {
  display: block;
  color: #000;
  text-decoration: none; }
  .front .exhibition-outer:hover .exhibition-container, .front .exhibition-outer:focus .exhibition-container {
    background: #F7F7F7; }
  @media (prefers-reduced-motion: no-preference) {
    .front .exhibition-outer:hover .img-wrapper img, .front .exhibition-outer:focus .img-wrapper img {
      transform: scale(1.05); } }
  .front .exhibition-outer:hover h3, .front .exhibition-outer:focus h3 {
    text-decoration: underline; }

.front .exhibition-container {
  margin-bottom: 4.5rem;
  padding: .5rem .5rem .5rem 0; }
  .front .exhibition-container img {
    width: 100%;
    transition: .2s; }
  .front .exhibition-container .img-wrapper {
    overflow: hidden; }
  .front .exhibition-container > * {
    margin-left: 3.625rem; }
    .front .exhibition-container > *:first-child {
      margin-left: 0; }
  @media only screen and (max-width: 525px) {
    .front .exhibition-container {
      flex-wrap: wrap; }
      .front .exhibition-container > * {
        flex: auto;
        width: 100%;
        margin-left: 0; }
      .front .exhibition-container img {
        margin-bottom: 1rem; }
      .front .exhibition-container p {
        margin: 0; } }

.front .exhibition-content__icon-row:last-of-type {
  margin-bottom: 1em; }

.front .exhibition-content__icon-row [class^="icon-"] {
  display: inline-block;
  width: 1.5rem;
  color: #CF102D;
  font-size: 1.1rem; }

.front .exhibitions-divider {
  margin: 4.5rem 0; }

.front .exhibition-photo-preview {
  margin-bottom: 4.5625rem; }
  @media only screen and (max-width: 875px) {
    .front .exhibition-photo-preview {
      margin-bottom: 2rem; } }

.front .exhibition-photo-container {
  position: relative;
  margin-bottom: 1.25rem;
  overflow: hidden; }
  .front .exhibition-photo-container img {
    display: block;
    width: 100%; }
    @media only screen and (max-width: 525px) {
      .front .exhibition-photo-container img {
        max-width: 100%; } }
  .front .exhibition-photo-container h3 {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    color: #FFF;
    text-align: center;
    font-size: 1.5rem;
    transform: translate(-50%, -50%); }
    .front .exhibition-photo-container h3 + img {
      filter: blur(4px) brightness(0.4); }

.front .exhibition-photo {
  display: block;
  width: 100%;
  margin-bottom: 1.25rem; }

.front .staff-filters, .front .module-filters {
  margin-bottom: 1.5rem; }
  @media only screen and (max-width: 875px) {
    .front .staff-filters .field, .front .module-filters .field {
      flex: auto;
      width: 100%;
      margin-right: 0; }
      .front .staff-filters .field input, .front .module-filters .field input {
        width: 100%; } }

.front .staff-field:first-of-type, .front .module-filter-field:first-of-type {
  margin-right: 20px; }

@media only screen and (max-width: 875px) {
  .front .staff-field, .front .module-filter-field {
    margin-right: 0; } }

.front .module-filter-field {
  min-width: 200px; }

.front .module-filter-field--mb0 {
  margin-bottom: 0; }

.front .staff {
  border-bottom: 1px solid #D8D8D8; }
  .front .staff:first-of-type {
    border-top: 1px solid #D8D8D8; }

.front .staff__image {
  margin-right: 20px; }
  @media only screen and (max-width: 1440px) {
    .front .staff__image {
      margin-bottom: 1rem; } }
  @media only screen and (max-width: 525px) {
    .front .staff__image {
      margin-right: 0; } }

.front .staff__main {
  flex: 1;
  align-items: flex-start;
  padding: 2.875rem 1.5rem 2.875rem 0; }
  .front .staff__main .subtitle {
    line-height: 1.4; }
  @media only screen and (max-width: 1440px) {
    .front .staff__main .subtitle {
      margin-bottom: .875rem; } }
  @media only screen and (max-width: 525px) {
    .front .staff__main {
      flex: auto;
      padding: 1.5rem 0 1rem; } }

@media only screen and (max-width: 525px) {
  .front .staff__name {
    width: 100%; } }

.front .staff__name h2 a, .front .staff__name h2 a:active, .front .staff__name h2 a:visited {
  color: #000; }

.front .staff__name .more, .front .staff__name .less {
  cursor: pointer;
  color: #CF102D;
  font-weight: bold; }
  .front .staff__name .more:hover, .front .staff__name .less:hover {
    text-decoration: underline; }

@media only screen and (max-width: 525px) {
  .front .staff__name .less {
    display: block;
    margin: -1.5rem 0 1rem 0; } }

.front .staff__info {
  flex: 1;
  padding: 2.875rem 1.5rem;
  max-width: 17.3125rem;
  border-left: 1px solid #D8D8D8; }
  .front .staff__info .icon-email {
    font-size: .85rem; }
  @media only screen and (max-width: 525px) {
    .front .staff__info {
      flex: auto;
      width: 100%;
      margin-bottom: 1rem;
      padding: 0;
      border: none;
      order: 1; } }

.front .year-container {
  display: flex; }
  .front .year-container .timeline-container {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-right: 3.33em; }
    .front .year-container .timeline-container .year-button {
      color: #CF102D;
      cursor: pointer; }
      .front .year-container .timeline-container .year-button:hover {
        text-decoration: underline; }
    .front .year-container .timeline-container .timeline-line {
      position: relative;
      display: inline-block;
      width: 1px;
      height: 100%;
      margin-bottom: .75em;
      background: #D8D8D8;
      border-left: 5px solid #FFF;
      border-right: 5px solid #FFF; }
      .front .year-container .timeline-container .timeline-line:hover {
        cursor: pointer;
        background: #b2b2b2; }
      .front .year-container .timeline-container .timeline-line::before, .front .year-container .timeline-container .timeline-line::after {
        position: absolute;
        display: block;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        border: 1px solid #D8D8D8;
        content: ''; }
      .front .year-container .timeline-container .timeline-line::before {
        top: -8px;
        left: -4px; }
      .front .year-container .timeline-container .timeline-line::after {
        bottom: -8px;
        left: -4px; }
    @media only screen and (max-width: 525px) {
      .front .year-container .timeline-container {
        margin-right: 1.5rem; } }
  .front .year-container.closed .timeline-line, .front .year-container.closed .timeline-content {
    display: none; }
  .front .year-container.closed .timeline-container h3 {
    opacity: .6; }

.front .resource {
  padding: 1.5rem;
  border-bottom: 1px solid #D8D8D8; }
  .front .resource:first-of-type {
    border-top: 1px solid #D8D8D8; }
  .front .resource:nth-child(even) {
    background-color: #F7F7F7; }

.front .resource__icon {
  font-size: 1.4em;
  padding-right: 1.5rem; }

.front .star-bullets {
  padding-left: 2rem;
  list-style: none; }
  .front .star-bullets .icon-star {
    margin: 0 1rem 0 -2rem;
    color: #CF102D;
    font-size: .9rem;
    vertical-align: text-top; }
  .front .star-bullets li {
    margin-bottom: .5rem; }

.front .no-wrap {
  white-space: nowrap; }

.front .card-slider {
  position: fixed;
  top: 50%;
  left: 0;
  z-index: 100;
  display: none;
  width: 100%;
  height: 594px;
  max-height: calc(100vh - 144px);
  transform: translateY(-50%); }
  .front .card-slider ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px; }
  .front .card-slider ::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); }
  .front .card-slider .card {
    max-height: calc(100vh - 144px);
    overflow: hidden; }
  .front .card-slider .card-controls {
    position: fixed;
    left: 50%;
    bottom: -90px;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    width: 542px;
    transform: translate(-50%, 0); }
    @media only screen and (max-width: 875px) {
      .front .card-slider .card-controls {
        max-width: calc(100% - 90px); } }
    @media (max-height: 810px) {
      .front .card-slider .card-controls {
        bottom: 0;
        transform: translate(-50%, 140%); } }
  .front .card-slider .card-controls__button {
    width: 3.25rem;
    height: 3.25rem;
    font-size: 1.25rem; }
    @media only screen and (max-width: 525px) {
      .front .card-slider .card-controls__button {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1rem; } }
  .front .card-slider .card-controls__dots {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (max-width: 525px) {
      .front .card-slider .card-controls__dots {
        display: none; } }
  .front .card-slider .card-controls__dot {
    width: 12px;
    height: 12px;
    margin-right: 8px;
    border-radius: 50%;
    background: #FFF;
    cursor: pointer; }
    .front .card-slider .card-controls__dot.active {
      background: #CF102D; }
  .front .card-slider .star-bullets li {
    margin: 1rem 0; }
    @media only screen and (max-width: 525px) {
      .front .card-slider .star-bullets li {
        font-size: .9rem; } }

.front .card {
  top: 50%;
  position: fixed;
  width: 542px;
  height: 594px;
  border-radius: 12px;
  background: #FFF;
  overflow: scroll;
  opacity: 0;
  visibility: hidden;
  transform: translate(0, -50%); }

.front .card--active, .front .card--previous, .front .card--next {
  opacity: 1;
  visibility: visible;
  transition: all .4s; }

.front .card--active {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  @media only screen and (max-width: 875px) {
    .front .card--active {
      max-width: calc(100% - 90px); } }

.front .card--previous {
  top: 50%;
  left: calc(-542px + 13vw);
  transform: translate(0, -50%);
  cursor: pointer; }
  @media only screen and (max-width: 875px) {
    .front .card--previous {
      left: calc(-542px + 30px); } }

.front .card--next {
  top: 50%;
  left: calc(100% - 13vw);
  transform: translate(0, -50%);
  cursor: pointer; }
  @media only screen and (max-width: 875px) {
    .front .card--next {
      left: calc(100% - 30px); } }

.front .card-top {
  padding: 2rem 1.25rem;
  background: #CF102D;
  color: #FFF !important; }
  @media only screen and (max-width: 525px) {
    .front .card-top {
      padding: 1.25rem 1.25rem 2.3rem; } }

.front .card-bottom {
  padding: 2rem 2.25rem;
  background: #FFF; }
  @media only screen and (max-width: 525px) {
    .front .card-bottom {
      margin-bottom: 0;
      padding: 1.25rem; } }

.front .card-bottom__buttons {
  margin-bottom: 1.5em; }
  @media only screen and (max-width: 525px) {
    .front .card-bottom__buttons {
      margin-top: -3.1rem; }
      .front .card-bottom__buttons .button, .front .card-bottom__buttons .cart-button {
        font-size: .8rem;
        border: 1px solid #FFF; } }

.front .card__benefits {
  max-height: 40vh;
  overflow-y: scroll; }
  .front .card__benefits h3 {
    margin: 0; }
  .front .card__benefits hr {
    width: 100%;
    margin-left: .5rem; }

.front .cards-close {
  position: absolute;
  top: -60px;
  left: calc(50% + 542px/2 - 76px); }
  .front .cards-close:hover {
    top: -60px; }
  @media only screen and (max-width: 875px) {
    .front .cards-close {
      top: -54px;
      left: calc(100% - 90px - 34px); }
      .front .cards-close:hover {
        top: -54px; } }

.front .hours-table-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2rem; }

.front .hours-callouts {
  margin: 1rem 0; }

.front .hours-callout:first-child {
  margin-right: 20px; }

@media only screen and (max-width: 1125px) {
  .front .hours-callout {
    width: 100%;
    flex: auto;
    margin-bottom: 1rem; }
    .front .hours-callout:first-child {
      margin-right: 0; } }

.front .hours__date-header {
  font-size: .875rem; }

.front .hours__weekday {
  font-size: 1.1rem; }

.front .hours__buttons {
  display: flex;
  gap: .2rem; }
  .front .hours__buttons .button, .front .hours__buttons .cart-button {
    min-width: 3.5rem;
    height: 3.5rem; }

.front #cart #cart-actions {
  background: #FFF; }

@media only screen and (max-width: 525px) {
  .front #cart .headers {
    display: none; }
  .front #cart .item .inner {
    position: static;
    transform: translate(0, 0); } }

.front #lucy-cart table tr.pitch td {
  color: #000;
  background: #F7F7F7; }

@media only screen and (max-width: 525px) {
  .front #lucy-cart {
    font-size: .875rem; } }

.front #news .preview-body {
  margin-bottom: 3rem; }

.front #news p img {
  width: 100%; }

.front .news-preview-container {
  display: flex;
  align-items: flex-start; }
  .front .news-preview-container .news-img-wrapper {
    display: block;
    width: 40%;
    margin-right: 3rem; }
  .front .news-preview-container > div {
    width: 60%; }
  .front .news-preview-container img {
    width: 100%; }
  @media only screen and (max-width: 1125px) {
    .front .news-preview-container {
      flex-wrap: wrap; }
      .front .news-preview-container .news-img-wrapper {
        width: 100%;
        margin-bottom: 1.5rem;
        margin-right: 0; }
      .front .news-preview-container > div {
        width: 100%; } }

.front .tag-container {
  margin-top: 6rem; }
  @media only screen and (max-width: 875px) {
    .front .tag-container {
      margin-top: 3rem; } }

.front .entry-tag {
  display: inline-block;
  margin: 0 1.25rem 1.25rem 0;
  padding: 1rem 1.25rem;
  color: #000;
  text-decoration: none;
  font-weight: bold;
  background-color: #F7F7F7; }
  .front .entry-tag:hover, .front .entry-tag:focus {
    background-color: #f2f2f2; }
  @media only screen and (max-width: 525px) {
    .front .entry-tag {
      display: block; } }

.front .faq {
  padding: 1.5rem 0;
  border-bottom: 1px solid #D8D8D8; }
  .front .faq:first-child {
    border-top: 1px solid #D8D8D8; }

.front .faq__inner {
  display: flex; }
  .front .faq__inner > div {
    flex: 1; }
  .front .faq__inner button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.8rem;
    height: 2.8rem;
    margin-left: 2rem;
    font-size: 1.8rem;
    background: #F7F7F7;
    border-radius: 50%; }
    .front .faq__inner button:hover, .front .faq__inner button:focus {
      color: #FFF;
      background: #CF102D; }

.front .faq__question {
  margin-bottom: 0;
  padding-top: .5rem; }

.front .faq__answer {
  display: none;
  margin-top: 1rem; }
  .front .faq__answer p:last-child {
    margin-bottom: 0; }

.front .faq-category-heading {
  margin: 3rem 0 .75rem 0; }

.front .loan-category {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  background-color: #FFF;
  border-top: 1px solid #D8D8D8; }
  .front .loan-category:active {
    color: #000; }
  .front .loan-category:hover, .front .loan-category:focus {
    background-color: #fcfcfc; }
  .front .loan-category:focus {
    outline-color: #cbcbcb; }
  .front .loan-category h2 {
    margin-right: 1.5rem;
    margin-bottom: 0;
    padding: 3.1875rem 0;
    text-align: left; }
  .front .loan-category .toggle-indicator {
    position: relative;
    margin-left: auto;
    min-width: 2.75rem;
    width: 2.75rem;
    height: 2.75rem; }
    .front .loan-category .toggle-indicator::before, .front .loan-category .toggle-indicator::after {
      position: absolute;
      top: 50%;
      left: 50%;
      display: block;
      background-color: #CF102D;
      transform: translate(-50%, -50%);
      transition: height .2s;
      content: ''; }
    .front .loan-category .toggle-indicator::before {
      display: block;
      width: 100%;
      height: 4px; }
    .front .loan-category .toggle-indicator::after {
      display: block;
      width: 4px;
      height: 100%;
      background-color: #CF102D; }
    .front .loan-category .toggle-indicator.open::after {
      height: 0%; }

.front .loan-table {
  display: none;
  width: 100%;
  margin-bottom: 3.125rem;
  border-collapse: collapse;
  table-layout: fixed; }
  .front .loan-table tr td {
    background-color: #FFF; }
  .front .loan-table tr:nth-child(odd) td {
    background-color: #F7F7F7; }
  .front .loan-table tr th, .front .loan-table tr td {
    padding: 1rem 1rem .88rem; }
    @media only screen and (max-width: 525px) {
      .front .loan-table tr th, .front .loan-table tr td {
        font-size: .88rem; } }
  .front .loan-table tr th:first-child, .front .loan-table tr td:first-child {
    width: 40%; }
  .front .loan-table .heading-row th, .front .loan-table .heading-row td {
    background-color: #CF102D; }
  .front .loan-table .heading-row th, .front .loan-table .heading-row td, .front .loan-table .heading-row h3 {
    color: #FFF; }
  .front .loan-table .heading-row h3 {
    font-size: 1.25rem;
    margin-bottom: 0; }

.front #lucy-products .product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px; }
  @media only screen and (max-width: 525px) {
    .front #lucy-products .product-grid {
      grid-template-columns: 1fr; } }

.front #lucy-products a {
  color: inherit;
  text-decoration: none; }

.front #lucy-products .product-item {
  background-color: #F9F9F9;
  border: 1px solid #DDDCDF;
  border-radius: .625rem;
  overflow: hidden; }
  .front #lucy-products .product-item img {
    display: block;
    width: 100%; }
  .front #lucy-products .product-item .title {
    margin-block-end: .5rem; }
  .front #lucy-products .product-item .price {
    margin-block-end: 0; }
  .front #lucy-products .product-item .inner {
    padding: 1.5rem 1.5rem 2rem 1.5rem; }

.front .sold-out {
  margin-block: 2rem;
  padding-block-start: 2rem;
  border-block-start: 1px solid #D8D8D8; }

.front .product-details {
  display: grid;
  gap: 2rem 4rem; }
  .front .product-details .product-detail-form {
    margin-block: 2rem;
    padding-block-start: 2rem;
    border-block-start: 1px solid #D8D8D8; }
  .front .product-details:has(> .images) {
    grid-template-columns: 2fr 1fr; }
    @media only screen and (max-width: 1125px) {
      .front .product-details:has(> .images) {
        grid-template-columns: auto; }
        .front .product-details:has(> .images) .images {
          order: -1; } }
  .front .product-details .images img {
    display: block;
    max-width: 100%; }

#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 #D8D8D8; }
  #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 #D8D8D8; }

/* --- 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-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    background-color: #CF102D;
    border-radius: 50%; }
    #lucy-pagination .arrow-button.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: #000;
      text-decoration: none;
      background-color: #F7F7F7;
      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: #CF102D; }
  #lucy-pagination #page-selection {
    margin: 0 !important;
    min-width: 4rem;
    font-size: .889rem; }

/* --- Contact Us Template Styles --- */
#contact-general p {
  line-height: 1.865; }
  #contact-general p:last-of-type {
    margin-bottom: 2.25rem; }

#contact-general .staff-plugin {
  margin-bottom: 2.25rem; }

body.front {
  padding-top: 8.125rem;
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  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.alert {
    padding-top: 11.25rem; }
    body.front.alert .nav-bar, body.front.alert #search-form, body.front.alert .nav-search {
      margin-top: 3.125rem; }
    body.front.alert #mobile-nav {
      top: 11.25rem; }
      @media only screen and (max-width: 1630px) {
        body.front.alert #mobile-nav {
          top: 10rem; } }
    body.front.alert .page-header {
      background-position: center 11.25rem; }
      @media only screen and (max-width: 1630px) {
        body.front.alert .page-header {
          background-position: center 10rem; } }
    @media only screen and (max-width: 1630px) {
      body.front.alert {
        padding-top: 10rem; } }
  @media only screen and (max-width: 1630px) {
    body.front {
      padding-top: 6.875rem; } }

.lucy-wrapper, #layout-7030 {
  position: relative;
  width: 100%;
  max-width: 1536px;
  margin: 0 auto;
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  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: 1920px) {
    .lucy-wrapper, #layout-7030 {
      padding: 0 10vw;
      max-width: none; } }
  @media only screen and (max-width: 1125px) {
    .lucy-wrapper, #layout-7030 {
      padding: 0 7vw;
      max-width: none; } }

.lucy-wrapper--nav {
  height: 100%; }

@media only screen and (max-width: 1630px) {
  .lucy-wrapper--nav {
    padding: 0 2rem 0; }
  .lucy-wrapper--nav {
    padding: 0 2rem 0; } }

/* --- Site Alerts --- */
#alert {
  position: fixed;
  z-index: 101;
  top: 0;
  left: 0;
  width: 100%;
  height: 3.125rem;
  text-align: center;
  background: #CF102D;
  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 p {
    display: inline-block;
    margin: 0 .75em 0 0;
    line-height: 3.125rem;
    font-size: .875rem;
    color: #FFF; }
    @media only screen and (max-width: 1125px) {
      #alert p {
        display: none; } }
    #alert p.title {
      font-family: "Trade Gothic LT W01 Bold";
      font-weight: bold;
      font-size: 1.125rem;
      text-transform: uppercase; }
      @media only screen and (max-width: 1125px) {
        #alert p.title {
          display: inline-block; } }
  #alert .button, #alert .cart-button {
    position: relative;
    top: -.05rem;
    padding-top: .6rem;
    padding-bottom: .6rem; }
  #alert .icon-close {
    position: absolute;
    top: 51%;
    right: 2rem;
    font-size: .8rem;
    cursor: pointer;
    color: #FFF;
    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; }
  #alert.hide {
    top: -3.125rem; }

.front .lcs_slide_out-r {
  top: 386px;
  font-family: "Domine", "Helvetica Neue", Helvetica, Arial, sans-serif !important; }

.front [id^=lcs_slide_out_button-] {
  background-color: #CF102D !important;
  font-family: "Trade Gothic LT W01 Bold" !important;
  text-transform: uppercase;
  font-weight: 400  !important;
  text-decoration: none !important;
  letter-spacing: 1px; }
  @media only screen and (max-width: 525px) {
    .front [id^=lcs_slide_out_button-] {
      padding: 6px;
      font-size: .9rem;
      border-width: 0px 2px 2px !important; } }

.front .chat-toggle {
  position: fixed;
  top: 30%;
  right: 0;
  z-index: 20;
  letter-spacing: 2px;
  writing-mode: vertical-lr;
  text-orientation: mixed;
  transform: rotate(180deg); }
  .front .chat-toggle:hover {
    top: 30%; }
  @media only screen and (max-width: 525px) {
    .front .chat-toggle {
      display: none; } }

.front .bg-callout {
  padding: 3.125rem 1rem;
  text-align: center; }

.front .bg-callout--bookshelf {
  background-image: url("/images/bookshelf-callout-bg.jpg");
  background-size: cover;
  background-position: center center; }

/* --- Site Popup --- */
#site-popup {
  position: fixed;
  bottom: -435px;
  right: 4em;
  z-index: 20;
  width: 390px;
  height: auto;
  padding: 2em;
  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;
  box-shadow: -4px -2px 9px 0 rgba(0, 0, 0, 0.5);
  -moz-box-shadow: -4px -2px 9px 0 rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: -4px -2px 9px 0 rgba(0, 0, 0, 0.5);
  -o-box-shadow: -4px -2px 9px 0 rgba(0, 0, 0, 0.5);
  -ms-box-shadow: -4px -2px 9px 0 rgba(0, 0, 0, 0.5);
  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) {
    #site-popup {
      right: auto;
      width: 100%; } }
  #site-popup .content {
    position: relative;
    z-index: 1; }
  #site-popup.show {
    bottom: 0; }
  #site-popup .icon-close {
    position: absolute;
    top: -10px;
    right: -15px;
    font-size: .8em;
    color: #000; }
    #site-popup .icon-close:hover {
      cursor: pointer;
      color: #CF102D;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
  #site-popup h3 {
    margin-bottom: .8em;
    text-transform: none;
    font-weight: 300; }
  #site-popup p {
    line-height: 1.3; }
  #site-popup .button, #site-popup .cart-button {
    display: block;
    width: 100%;
    padding: 1.3em 0;
    text-align: center; }
  #site-popup .popup-dismiss {
    cursor: pointer;
    margin-top: 2em;
    margin-bottom: 0;
    font-family: "Trade Gothic LT W01 Bold";
    font-size: .82em;
    text-transform: uppercase;
    letter-spacing: 1px;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    #site-popup .popup-dismiss:hover {
      text-decoration: underline; }

#collection-search-fields > * {
  margin: 0 10px 0 0;
  flex: auto; }

#collection-search-fields .field--select {
  flex: 1; }

#collection-search-fields .field--text {
  flex: 1.7; }
  #collection-search-fields .field--text input {
    width: 100%; }
  #collection-search-fields .field--text input::placeholder {
    position: relative;
    top: .1rem;
    font-size: 1.5rem;
    font-weight: 300;
    color: #636363;
    line-height: 1; }
  #collection-search-fields .field--text .label--float {
    left: 0;
    padding-left: 3rem; }
  @media only screen and (max-width: 1125px) {
    #collection-search-fields .field--text {
      flex: 1; } }

#collection-search-fields button {
  max-width: 124px;
  margin-right: 0px; }

#collection-search-fields select {
  font-family: "Trade Gothic LT W01 Bold";
  text-transform: uppercase;
  text-overflow: ellipsis; }

#collection-search-fields .control {
  position: relative; }
  #collection-search-fields .control:has(.tooltip) input {
    padding-right: 5.5rem; }
  #collection-search-fields .control input {
    padding-top: 1.35rem;
    padding-bottom: .7rem;
    padding-left: 3rem;
    padding-right: 1.5rem; }
    #collection-search-fields .control input::placeholder {
      position: relative;
      top: -.2rem; }
      @media only screen and (max-width: 1920px) {
        #collection-search-fields .control input::placeholder {
          font-size: 1vw; } }
      @media only screen and (max-width: 1440px) {
        #collection-search-fields .control input::placeholder {
          font-size: .85rem; } }
  #collection-search-fields .control #search-type {
    padding-right: 3rem; }

#collection-search-fields .tooltip--control {
  position: absolute;
  top: 47%;
  right: 2.4rem;
  transform: translate(0, -50%); }

#collection-search-fields .tooltip__content {
  left: 0; }
  @media only screen and (max-width: 1125px) {
    #collection-search-fields .tooltip__content {
      left: -44vw; } }
  @media only screen and (max-width: 875px) {
    #collection-search-fields .tooltip__content {
      left: -78vw; } }

#collection-search-fields .search-icon {
  position: absolute;
  top: 50%;
  left: 1rem;
  width: 21px;
  transform: translate(0, -50%); }

#collection-search-fields #advanced-search-control {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translate(0, -50%);
  text-decoration: none; }
  #collection-search-fields #advanced-search-control .icon-share {
    color: #CF102D;
    margin-right: .2rem;
    font-size: .8rem; }
  #collection-search-fields #advanced-search-control .advanced-link {
    font-family: "Trade Gothic LT W01 Bold";
    font-size: .875rem;
    letter-spacing: .3px;
    text-transform: uppercase; }
  #collection-search-fields #advanced-search-control:hover {
    text-decoration: underline; }

#collection-search-fields :disabled {
  cursor: not-allowed; }

@media only screen and (max-width: 1125px) {
  #collection-search-fields {
    flex-wrap: wrap; }
    #collection-search-fields .field {
      width: 100%;
      flex: auto;
      margin: 0 0 .5rem 0;
      box-sizing: border-box; } }

@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after {
    animation-delay: -1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    background-attachment: initial !important;
    scroll-behavior: auto !important;
    transition-duration: 0s !important;
    transition-delay: 0s !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .desktop-large-inset-l1 {
    padding-left: 4.16667% !important; }
  .desktop-large-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .desktop-large-inset-l2 {
    padding-left: 8.33333% !important; }
  .desktop-large-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .desktop-large-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .desktop-large-inset-l3 {
    padding-left: 12.5% !important; }
  .desktop-large-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .desktop-large-inset-l4 {
    padding-left: 16.66667% !important; }
  .desktop-large-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .desktop-large-inset-l5 {
    padding-left: 20.83333% !important; }
  .desktop-large-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .desktop-large-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .desktop-large-inset-l6 {
    padding-left: 25% !important; }
  .desktop-large-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .desktop-large-inset-l7 {
    padding-left: 29.16667% !important; }
  .desktop-large-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .desktop-large-inset-l8 {
    padding-left: 33.33333% !important; }
  .desktop-large-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .desktop-large-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .desktop-large-inset-l9 {
    padding-left: 37.5% !important; }
  .desktop-large-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .desktop-large-inset-l10 {
    padding-left: 41.66667% !important; }
  .desktop-large-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .desktop-large-inset-l11 {
    padding-left: 45.83333% !important; }
  .desktop-large-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .desktop-large-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .desktop-large-inset-l12 {
    padding-left: 50% !important; }
  .desktop-large-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .desktop-large-inset-l13 {
    padding-left: 54.16667% !important; }
  .desktop-large-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .desktop-large-inset-l14 {
    padding-left: 58.33333% !important; }
  .desktop-large-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .desktop-large-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .desktop-large-inset-l15 {
    padding-left: 62.5% !important; }
  .desktop-large-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .desktop-large-inset-l16 {
    padding-left: 66.66667% !important; }
  .desktop-large-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .desktop-large-inset-l17 {
    padding-left: 70.83333% !important; }
  .desktop-large-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .desktop-large-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .desktop-large-inset-l18 {
    padding-left: 75% !important; }
  .desktop-large-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .desktop-large-inset-l19 {
    padding-left: 79.16667% !important; }
  .desktop-large-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .desktop-large-inset-l20 {
    padding-left: 83.33333% !important; }
  .desktop-large-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .desktop-large-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .desktop-large-inset-l21 {
    padding-left: 87.5% !important; }
  .desktop-large-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .desktop-large-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .desktop-large-inset-l22 {
    padding-left: 91.66667% !important; }
  .desktop-large-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .desktop-large-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .desktop-large-inset-l23 {
    padding-left: 95.83333% !important; }
  .desktop-large-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 1920px) {
  .desktop-large-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .desktop-large-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .desktop-large-inset-l24 {
    padding-left: 100% !important; }
  .desktop-large-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 1920px) {
  [class*='span'].desktop-large-offset0 {
    margin-left: 20px !important; }
  [class*='span'].desktop-large-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].desktop-large-inset-r0 {
    padding-right: 0 !important; }
  .front .desktop-large-clear {
    clear: both; }
  .front .desktop-large-hide {
    display: none; }
  .front .desktop-large-block {
    display: block; }
  .front .desktop-large-inline-block {
    display: inline-block; }
  .front .desktop-large-flex {
    display: flex; }
  .front .desktop-large-flex-wrap {
    flex-wrap: wrap; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .navbar-collapse-inset-l1 {
    padding-left: 4.16667% !important; }
  .navbar-collapse-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .navbar-collapse-inset-l2 {
    padding-left: 8.33333% !important; }
  .navbar-collapse-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .navbar-collapse-inset-l3 {
    padding-left: 12.5% !important; }
  .navbar-collapse-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .navbar-collapse-inset-l4 {
    padding-left: 16.66667% !important; }
  .navbar-collapse-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .navbar-collapse-inset-l5 {
    padding-left: 20.83333% !important; }
  .navbar-collapse-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .navbar-collapse-inset-l6 {
    padding-left: 25% !important; }
  .navbar-collapse-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .navbar-collapse-inset-l7 {
    padding-left: 29.16667% !important; }
  .navbar-collapse-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .navbar-collapse-inset-l8 {
    padding-left: 33.33333% !important; }
  .navbar-collapse-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .navbar-collapse-inset-l9 {
    padding-left: 37.5% !important; }
  .navbar-collapse-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .navbar-collapse-inset-l10 {
    padding-left: 41.66667% !important; }
  .navbar-collapse-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .navbar-collapse-inset-l11 {
    padding-left: 45.83333% !important; }
  .navbar-collapse-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .navbar-collapse-inset-l12 {
    padding-left: 50% !important; }
  .navbar-collapse-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .navbar-collapse-inset-l13 {
    padding-left: 54.16667% !important; }
  .navbar-collapse-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .navbar-collapse-inset-l14 {
    padding-left: 58.33333% !important; }
  .navbar-collapse-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .navbar-collapse-inset-l15 {
    padding-left: 62.5% !important; }
  .navbar-collapse-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .navbar-collapse-inset-l16 {
    padding-left: 66.66667% !important; }
  .navbar-collapse-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .navbar-collapse-inset-l17 {
    padding-left: 70.83333% !important; }
  .navbar-collapse-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .navbar-collapse-inset-l18 {
    padding-left: 75% !important; }
  .navbar-collapse-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .navbar-collapse-inset-l19 {
    padding-left: 79.16667% !important; }
  .navbar-collapse-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .navbar-collapse-inset-l20 {
    padding-left: 83.33333% !important; }
  .navbar-collapse-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .navbar-collapse-inset-l21 {
    padding-left: 87.5% !important; }
  .navbar-collapse-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .navbar-collapse-inset-l22 {
    padding-left: 91.66667% !important; }
  .navbar-collapse-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .navbar-collapse-inset-l23 {
    padding-left: 95.83333% !important; }
  .navbar-collapse-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 1630px) {
  .navbar-collapse-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .navbar-collapse-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .navbar-collapse-inset-l24 {
    padding-left: 100% !important; }
  .navbar-collapse-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 1630px) {
  [class*='span'].navbar-collapse-offset0 {
    margin-left: 20px !important; }
  [class*='span'].navbar-collapse-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].navbar-collapse-inset-r0 {
    padding-right: 0 !important; }
  .front .navbar-collapse-clear {
    clear: both; }
  .front .navbar-collapse-hide {
    display: none; }
  .front .navbar-collapse-block {
    display: block; }
  .front .navbar-collapse-inline-block {
    display: inline-block; }
  .front .navbar-collapse-flex {
    display: flex; }
  .front .navbar-collapse-flex-wrap {
    flex-wrap: wrap; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .desktop-medium-inset-l1 {
    padding-left: 4.16667% !important; }
  .desktop-medium-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .desktop-medium-inset-l2 {
    padding-left: 8.33333% !important; }
  .desktop-medium-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .desktop-medium-inset-l3 {
    padding-left: 12.5% !important; }
  .desktop-medium-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .desktop-medium-inset-l4 {
    padding-left: 16.66667% !important; }
  .desktop-medium-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .desktop-medium-inset-l5 {
    padding-left: 20.83333% !important; }
  .desktop-medium-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .desktop-medium-inset-l6 {
    padding-left: 25% !important; }
  .desktop-medium-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .desktop-medium-inset-l7 {
    padding-left: 29.16667% !important; }
  .desktop-medium-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .desktop-medium-inset-l8 {
    padding-left: 33.33333% !important; }
  .desktop-medium-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .desktop-medium-inset-l9 {
    padding-left: 37.5% !important; }
  .desktop-medium-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .desktop-medium-inset-l10 {
    padding-left: 41.66667% !important; }
  .desktop-medium-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .desktop-medium-inset-l11 {
    padding-left: 45.83333% !important; }
  .desktop-medium-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .desktop-medium-inset-l12 {
    padding-left: 50% !important; }
  .desktop-medium-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .desktop-medium-inset-l13 {
    padding-left: 54.16667% !important; }
  .desktop-medium-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .desktop-medium-inset-l14 {
    padding-left: 58.33333% !important; }
  .desktop-medium-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .desktop-medium-inset-l15 {
    padding-left: 62.5% !important; }
  .desktop-medium-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .desktop-medium-inset-l16 {
    padding-left: 66.66667% !important; }
  .desktop-medium-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .desktop-medium-inset-l17 {
    padding-left: 70.83333% !important; }
  .desktop-medium-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .desktop-medium-inset-l18 {
    padding-left: 75% !important; }
  .desktop-medium-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .desktop-medium-inset-l19 {
    padding-left: 79.16667% !important; }
  .desktop-medium-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .desktop-medium-inset-l20 {
    padding-left: 83.33333% !important; }
  .desktop-medium-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .desktop-medium-inset-l21 {
    padding-left: 87.5% !important; }
  .desktop-medium-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .desktop-medium-inset-l22 {
    padding-left: 91.66667% !important; }
  .desktop-medium-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .desktop-medium-inset-l23 {
    padding-left: 95.83333% !important; }
  .desktop-medium-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 1440px) {
  .desktop-medium-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .desktop-medium-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .desktop-medium-inset-l24 {
    padding-left: 100% !important; }
  .desktop-medium-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 1440px) {
  [class*='span'].desktop-medium-offset0 {
    margin-left: 20px !important; }
  [class*='span'].desktop-medium-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].desktop-medium-inset-r0 {
    padding-right: 0 !important; }
  .front .desktop-medium-clear {
    clear: both; }
  .front .desktop-medium-hide {
    display: none; }
  .front .desktop-medium-block {
    display: block; }
  .front .desktop-medium-inline-block {
    display: inline-block; }
  .front .desktop-medium-flex {
    display: flex; }
  .front .desktop-medium-flex-wrap {
    flex-wrap: wrap; } }

@media only screen and (max-width: 1125px) {
  .desktop-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .desktop-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .desktop-inset-l1 {
    padding-left: 4.16667% !important; }
  .desktop-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .desktop-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .desktop-inset-l2 {
    padding-left: 8.33333% !important; }
  .desktop-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .desktop-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .desktop-inset-l3 {
    padding-left: 12.5% !important; }
  .desktop-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .desktop-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .desktop-inset-l4 {
    padding-left: 16.66667% !important; }
  .desktop-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .desktop-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .desktop-inset-l5 {
    padding-left: 20.83333% !important; }
  .desktop-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .desktop-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .desktop-inset-l6 {
    padding-left: 25% !important; }
  .desktop-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .desktop-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .desktop-inset-l7 {
    padding-left: 29.16667% !important; }
  .desktop-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .desktop-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .desktop-inset-l8 {
    padding-left: 33.33333% !important; }
  .desktop-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .desktop-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .desktop-inset-l9 {
    padding-left: 37.5% !important; }
  .desktop-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .desktop-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .desktop-inset-l10 {
    padding-left: 41.66667% !important; }
  .desktop-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .desktop-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .desktop-inset-l11 {
    padding-left: 45.83333% !important; }
  .desktop-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .desktop-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .desktop-inset-l12 {
    padding-left: 50% !important; }
  .desktop-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .desktop-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .desktop-inset-l13 {
    padding-left: 54.16667% !important; }
  .desktop-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .desktop-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .desktop-inset-l14 {
    padding-left: 58.33333% !important; }
  .desktop-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .desktop-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .desktop-inset-l15 {
    padding-left: 62.5% !important; }
  .desktop-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .desktop-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .desktop-inset-l16 {
    padding-left: 66.66667% !important; }
  .desktop-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .desktop-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .desktop-inset-l17 {
    padding-left: 70.83333% !important; }
  .desktop-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .desktop-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .desktop-inset-l18 {
    padding-left: 75% !important; }
  .desktop-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .desktop-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .desktop-inset-l19 {
    padding-left: 79.16667% !important; }
  .desktop-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .desktop-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .desktop-inset-l20 {
    padding-left: 83.33333% !important; }
  .desktop-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .desktop-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .desktop-inset-l21 {
    padding-left: 87.5% !important; }
  .desktop-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .desktop-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .desktop-inset-l22 {
    padding-left: 91.66667% !important; }
  .desktop-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .desktop-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .desktop-inset-l23 {
    padding-left: 95.83333% !important; }
  .desktop-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 1125px) {
  .desktop-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .desktop-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .desktop-inset-l24 {
    padding-left: 100% !important; }
  .desktop-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 1125px) {
  [class*='span'].desktop-offset0 {
    margin-left: 20px !important; }
  [class*='span'].desktop-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].desktop-inset-r0 {
    padding-right: 0 !important; }
  .front .desktop-clear {
    clear: both; }
  .front .desktop-hide {
    display: none; }
  .front .desktop-block {
    display: block; }
  .front .desktop-inline-block {
    display: inline-block; }
  .front .desktop-flex {
    display: flex; }
  .front .desktop-flex-wrap {
    flex-wrap: wrap; } }

@media only screen and (max-width: 875px) {
  .tablet-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .tablet-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .tablet-inset-l1 {
    padding-left: 4.16667% !important; }
  .tablet-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .tablet-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .tablet-inset-l2 {
    padding-left: 8.33333% !important; }
  .tablet-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .tablet-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .tablet-inset-l3 {
    padding-left: 12.5% !important; }
  .tablet-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .tablet-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .tablet-inset-l4 {
    padding-left: 16.66667% !important; }
  .tablet-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .tablet-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .tablet-inset-l5 {
    padding-left: 20.83333% !important; }
  .tablet-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .tablet-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .tablet-inset-l6 {
    padding-left: 25% !important; }
  .tablet-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .tablet-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .tablet-inset-l7 {
    padding-left: 29.16667% !important; }
  .tablet-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .tablet-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .tablet-inset-l8 {
    padding-left: 33.33333% !important; }
  .tablet-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .tablet-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .tablet-inset-l9 {
    padding-left: 37.5% !important; }
  .tablet-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .tablet-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .tablet-inset-l10 {
    padding-left: 41.66667% !important; }
  .tablet-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .tablet-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .tablet-inset-l11 {
    padding-left: 45.83333% !important; }
  .tablet-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .tablet-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .tablet-inset-l12 {
    padding-left: 50% !important; }
  .tablet-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .tablet-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .tablet-inset-l13 {
    padding-left: 54.16667% !important; }
  .tablet-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .tablet-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .tablet-inset-l14 {
    padding-left: 58.33333% !important; }
  .tablet-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .tablet-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .tablet-inset-l15 {
    padding-left: 62.5% !important; }
  .tablet-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .tablet-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .tablet-inset-l16 {
    padding-left: 66.66667% !important; }
  .tablet-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .tablet-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .tablet-inset-l17 {
    padding-left: 70.83333% !important; }
  .tablet-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .tablet-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .tablet-inset-l18 {
    padding-left: 75% !important; }
  .tablet-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .tablet-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .tablet-inset-l19 {
    padding-left: 79.16667% !important; }
  .tablet-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .tablet-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .tablet-inset-l20 {
    padding-left: 83.33333% !important; }
  .tablet-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .tablet-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .tablet-inset-l21 {
    padding-left: 87.5% !important; }
  .tablet-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .tablet-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .tablet-inset-l22 {
    padding-left: 91.66667% !important; }
  .tablet-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .tablet-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .tablet-inset-l23 {
    padding-left: 95.83333% !important; }
  .tablet-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 875px) {
  .tablet-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .tablet-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .tablet-inset-l24 {
    padding-left: 100% !important; }
  .tablet-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 875px) {
  [class*='span'].tablet-offset0 {
    margin-left: 20px !important; }
  [class*='span'].tablet-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].tablet-inset-r0 {
    padding-right: 0 !important; }
  .front .tablet-clear {
    clear: both; }
  .front .tablet-hide {
    display: none; }
  .front .tablet-block {
    display: block; }
  .front .tablet-inline-block {
    display: inline-block; }
  .front .tablet-flex {
    display: flex; }
  .front .tablet-flex-wrap {
    flex-wrap: wrap; } }

@media only screen and (max-width: 525px) {
  .mobile-span1 {
    width: calc(4.16667% - 20px);
    margin-left: 20px; }
  .mobile-offset1 {
    margin-left: calc(4.16667% + 20px) !important; }
  .mobile-inset-l1 {
    padding-left: 4.16667% !important; }
  .mobile-inset-r1 {
    padding-right: 4.16667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span2 {
    width: calc(8.33333% - 20px);
    margin-left: 20px; }
  .mobile-offset2 {
    margin-left: calc(8.33333% + 20px) !important; }
  .mobile-inset-l2 {
    padding-left: 8.33333% !important; }
  .mobile-inset-r2 {
    padding-right: 8.33333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span3 {
    width: calc(12.5% - 20px);
    margin-left: 20px; }
  .mobile-offset3 {
    margin-left: calc(12.5% + 20px) !important; }
  .mobile-inset-l3 {
    padding-left: 12.5% !important; }
  .mobile-inset-r3 {
    padding-right: 12.5% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span4 {
    width: calc(16.66667% - 20px);
    margin-left: 20px; }
  .mobile-offset4 {
    margin-left: calc(16.66667% + 20px) !important; }
  .mobile-inset-l4 {
    padding-left: 16.66667% !important; }
  .mobile-inset-r4 {
    padding-right: 16.66667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span5 {
    width: calc(20.83333% - 20px);
    margin-left: 20px; }
  .mobile-offset5 {
    margin-left: calc(20.83333% + 20px) !important; }
  .mobile-inset-l5 {
    padding-left: 20.83333% !important; }
  .mobile-inset-r5 {
    padding-right: 20.83333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span6 {
    width: calc(25% - 20px);
    margin-left: 20px; }
  .mobile-offset6 {
    margin-left: calc(25% + 20px) !important; }
  .mobile-inset-l6 {
    padding-left: 25% !important; }
  .mobile-inset-r6 {
    padding-right: 25% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span7 {
    width: calc(29.16667% - 20px);
    margin-left: 20px; }
  .mobile-offset7 {
    margin-left: calc(29.16667% + 20px) !important; }
  .mobile-inset-l7 {
    padding-left: 29.16667% !important; }
  .mobile-inset-r7 {
    padding-right: 29.16667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span8 {
    width: calc(33.33333% - 20px);
    margin-left: 20px; }
  .mobile-offset8 {
    margin-left: calc(33.33333% + 20px) !important; }
  .mobile-inset-l8 {
    padding-left: 33.33333% !important; }
  .mobile-inset-r8 {
    padding-right: 33.33333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span9 {
    width: calc(37.5% - 20px);
    margin-left: 20px; }
  .mobile-offset9 {
    margin-left: calc(37.5% + 20px) !important; }
  .mobile-inset-l9 {
    padding-left: 37.5% !important; }
  .mobile-inset-r9 {
    padding-right: 37.5% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span10 {
    width: calc(41.66667% - 20px);
    margin-left: 20px; }
  .mobile-offset10 {
    margin-left: calc(41.66667% + 20px) !important; }
  .mobile-inset-l10 {
    padding-left: 41.66667% !important; }
  .mobile-inset-r10 {
    padding-right: 41.66667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span11 {
    width: calc(45.83333% - 20px);
    margin-left: 20px; }
  .mobile-offset11 {
    margin-left: calc(45.83333% + 20px) !important; }
  .mobile-inset-l11 {
    padding-left: 45.83333% !important; }
  .mobile-inset-r11 {
    padding-right: 45.83333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span12 {
    width: calc(50% - 20px);
    margin-left: 20px; }
  .mobile-offset12 {
    margin-left: calc(50% + 20px) !important; }
  .mobile-inset-l12 {
    padding-left: 50% !important; }
  .mobile-inset-r12 {
    padding-right: 50% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span13 {
    width: calc(54.16667% - 20px);
    margin-left: 20px; }
  .mobile-offset13 {
    margin-left: calc(54.16667% + 20px) !important; }
  .mobile-inset-l13 {
    padding-left: 54.16667% !important; }
  .mobile-inset-r13 {
    padding-right: 54.16667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span14 {
    width: calc(58.33333% - 20px);
    margin-left: 20px; }
  .mobile-offset14 {
    margin-left: calc(58.33333% + 20px) !important; }
  .mobile-inset-l14 {
    padding-left: 58.33333% !important; }
  .mobile-inset-r14 {
    padding-right: 58.33333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span15 {
    width: calc(62.5% - 20px);
    margin-left: 20px; }
  .mobile-offset15 {
    margin-left: calc(62.5% + 20px) !important; }
  .mobile-inset-l15 {
    padding-left: 62.5% !important; }
  .mobile-inset-r15 {
    padding-right: 62.5% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span16 {
    width: calc(66.66667% - 20px);
    margin-left: 20px; }
  .mobile-offset16 {
    margin-left: calc(66.66667% + 20px) !important; }
  .mobile-inset-l16 {
    padding-left: 66.66667% !important; }
  .mobile-inset-r16 {
    padding-right: 66.66667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span17 {
    width: calc(70.83333% - 20px);
    margin-left: 20px; }
  .mobile-offset17 {
    margin-left: calc(70.83333% + 20px) !important; }
  .mobile-inset-l17 {
    padding-left: 70.83333% !important; }
  .mobile-inset-r17 {
    padding-right: 70.83333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span18 {
    width: calc(75% - 20px);
    margin-left: 20px; }
  .mobile-offset18 {
    margin-left: calc(75% + 20px) !important; }
  .mobile-inset-l18 {
    padding-left: 75% !important; }
  .mobile-inset-r18 {
    padding-right: 75% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span19 {
    width: calc(79.16667% - 20px);
    margin-left: 20px; }
  .mobile-offset19 {
    margin-left: calc(79.16667% + 20px) !important; }
  .mobile-inset-l19 {
    padding-left: 79.16667% !important; }
  .mobile-inset-r19 {
    padding-right: 79.16667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span20 {
    width: calc(83.33333% - 20px);
    margin-left: 20px; }
  .mobile-offset20 {
    margin-left: calc(83.33333% + 20px) !important; }
  .mobile-inset-l20 {
    padding-left: 83.33333% !important; }
  .mobile-inset-r20 {
    padding-right: 83.33333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span21 {
    width: calc(87.5% - 20px);
    margin-left: 20px; }
  .mobile-offset21 {
    margin-left: calc(87.5% + 20px) !important; }
  .mobile-inset-l21 {
    padding-left: 87.5% !important; }
  .mobile-inset-r21 {
    padding-right: 87.5% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span22 {
    width: calc(91.66667% - 20px);
    margin-left: 20px; }
  .mobile-offset22 {
    margin-left: calc(91.66667% + 20px) !important; }
  .mobile-inset-l22 {
    padding-left: 91.66667% !important; }
  .mobile-inset-r22 {
    padding-right: 91.66667% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span23 {
    width: calc(95.83333% - 20px);
    margin-left: 20px; }
  .mobile-offset23 {
    margin-left: calc(95.83333% + 20px) !important; }
  .mobile-inset-l23 {
    padding-left: 95.83333% !important; }
  .mobile-inset-r23 {
    padding-right: 95.83333% !important; } }

@media only screen and (max-width: 525px) {
  .mobile-span24 {
    width: calc(100% - 20px);
    margin-left: 20px; }
  .mobile-offset24 {
    margin-left: calc(100% + 20px) !important; }
  .mobile-inset-l24 {
    padding-left: 100% !important; }
  .mobile-inset-r24 {
    padding-right: 100% !important; } }

@media only screen and (max-width: 525px) {
  [class*='span'].mobile-offset0 {
    margin-left: 0 !important; }
  [class*='span'].mobile-inset-l0 {
    padding-left: 0 !important; }
  [class*='span'].mobile-inset-r0 {
    padding-right: 0 !important; }
  .front .mobile-clear {
    clear: both; }
  .front .mobile-hide {
    display: none; }
  .front .mobile-block {
    display: block; }
  .front .mobile-inline-block {
    display: inline-block; }
  .front .mobile-flex {
    display: flex; }
  .front .mobile-flex-wrap {
    flex-wrap: wrap; } }
