/* --- Fonts, Colors, and Spacing --- */
/* --- 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: -10px;
  *zoom: 1; }
  @media only screen and (max-width: 572px) {
    .row {
      margin-left: 0; } }

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

.row:after {
  clear: both; }

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

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

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

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

/* --- Column Sizes --- */
@media only screen and (min-width: 1148px) {
  .span1 {
    width: 37px; } }

@media only screen and (max-width: 1148px) {
  .span1 {
    width: 31px; } }

@media only screen and (max-width: 1004px) {
  .span1 {
    width: 25px; } }

@media only screen and (max-width: 860px) {
  .span1 {
    width: 19px; } }

@media only screen and (max-width: 716px) {
  .span1 {
    width: 13px; } }

@media only screen and (min-width: 1148px) {
  .offset1 {
    margin-left: 57px; } }

@media only screen and (max-width: 1148px) {
  .offset1 {
    margin-left: 51px; } }

@media only screen and (max-width: 1004px) {
  .offset1 {
    margin-left: 45px; } }

@media only screen and (max-width: 860px) {
  .offset1 {
    margin-left: 39px; } }

@media only screen and (max-width: 716px) {
  .offset1 {
    margin-left: 33px; } }

@media only screen and (min-width: 1148px) {
  .offset1.border-left, .offset1.border-right {
    margin-left: 56px; } }

@media only screen and (max-width: 1148px) {
  .offset1.border-left, .offset1.border-right {
    margin-left: 50px; } }

@media only screen and (max-width: 1004px) {
  .offset1.border-left, .offset1.border-right {
    margin-left: 44px; } }

@media only screen and (max-width: 860px) {
  .offset1.border-left, .offset1.border-right {
    margin-left: 38px; } }

@media only screen and (max-width: 716px) {
  .offset1.border-left, .offset1.border-right {
    margin-left: 32px; } }

@media only screen and (min-width: 1148px) {
  .inset-l1 {
    padding-left: 47px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l1 {
    padding-left: 41px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l1 {
    padding-left: 35px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l1 {
    padding-left: 29px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l1 {
    padding-left: 23px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r1 {
    padding-right: 47px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r1 {
    padding-right: 41px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r1 {
    padding-right: 35px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r1 {
    padding-right: 29px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r1 {
    padding-right: 23px !important; } }

@media only screen and (min-width: 1148px) {
  .span2 {
    width: 84px; } }

@media only screen and (max-width: 1148px) {
  .span2 {
    width: 72px; } }

@media only screen and (max-width: 1004px) {
  .span2 {
    width: 60px; } }

@media only screen and (max-width: 860px) {
  .span2 {
    width: 48px; } }

@media only screen and (max-width: 716px) {
  .span2 {
    width: 36px; } }

@media only screen and (min-width: 1148px) {
  .offset2 {
    margin-left: 104px; } }

@media only screen and (max-width: 1148px) {
  .offset2 {
    margin-left: 92px; } }

@media only screen and (max-width: 1004px) {
  .offset2 {
    margin-left: 80px; } }

@media only screen and (max-width: 860px) {
  .offset2 {
    margin-left: 68px; } }

@media only screen and (max-width: 716px) {
  .offset2 {
    margin-left: 56px; } }

@media only screen and (min-width: 1148px) {
  .offset2.border-left, .offset2.border-right {
    margin-left: 103px; } }

@media only screen and (max-width: 1148px) {
  .offset2.border-left, .offset2.border-right {
    margin-left: 91px; } }

@media only screen and (max-width: 1004px) {
  .offset2.border-left, .offset2.border-right {
    margin-left: 79px; } }

@media only screen and (max-width: 860px) {
  .offset2.border-left, .offset2.border-right {
    margin-left: 67px; } }

@media only screen and (max-width: 716px) {
  .offset2.border-left, .offset2.border-right {
    margin-left: 55px; } }

@media only screen and (min-width: 1148px) {
  .inset-l2 {
    padding-left: 94px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l2 {
    padding-left: 82px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l2 {
    padding-left: 70px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l2 {
    padding-left: 58px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l2 {
    padding-left: 46px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r2 {
    padding-right: 94px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r2 {
    padding-right: 82px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r2 {
    padding-right: 70px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r2 {
    padding-right: 58px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r2 {
    padding-right: 46px !important; } }

@media only screen and (min-width: 1148px) {
  .span3 {
    width: 131px; } }

@media only screen and (max-width: 1148px) {
  .span3 {
    width: 113px; } }

@media only screen and (max-width: 1004px) {
  .span3 {
    width: 95px; } }

@media only screen and (max-width: 860px) {
  .span3 {
    width: 77px; } }

@media only screen and (max-width: 716px) {
  .span3 {
    width: 59px; } }

@media only screen and (min-width: 1148px) {
  .offset3 {
    margin-left: 151px; } }

@media only screen and (max-width: 1148px) {
  .offset3 {
    margin-left: 133px; } }

@media only screen and (max-width: 1004px) {
  .offset3 {
    margin-left: 115px; } }

@media only screen and (max-width: 860px) {
  .offset3 {
    margin-left: 97px; } }

@media only screen and (max-width: 716px) {
  .offset3 {
    margin-left: 79px; } }

@media only screen and (min-width: 1148px) {
  .offset3.border-left, .offset3.border-right {
    margin-left: 150px; } }

@media only screen and (max-width: 1148px) {
  .offset3.border-left, .offset3.border-right {
    margin-left: 132px; } }

@media only screen and (max-width: 1004px) {
  .offset3.border-left, .offset3.border-right {
    margin-left: 114px; } }

@media only screen and (max-width: 860px) {
  .offset3.border-left, .offset3.border-right {
    margin-left: 96px; } }

@media only screen and (max-width: 716px) {
  .offset3.border-left, .offset3.border-right {
    margin-left: 78px; } }

@media only screen and (min-width: 1148px) {
  .inset-l3 {
    padding-left: 141px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l3 {
    padding-left: 123px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l3 {
    padding-left: 105px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l3 {
    padding-left: 87px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l3 {
    padding-left: 69px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r3 {
    padding-right: 141px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r3 {
    padding-right: 123px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r3 {
    padding-right: 105px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r3 {
    padding-right: 87px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r3 {
    padding-right: 69px !important; } }

@media only screen and (min-width: 1148px) {
  .span4 {
    width: 178px; } }

@media only screen and (max-width: 1148px) {
  .span4 {
    width: 154px; } }

@media only screen and (max-width: 1004px) {
  .span4 {
    width: 130px; } }

@media only screen and (max-width: 860px) {
  .span4 {
    width: 106px; } }

@media only screen and (max-width: 716px) {
  .span4 {
    width: 82px; } }

@media only screen and (min-width: 1148px) {
  .offset4 {
    margin-left: 198px; } }

@media only screen and (max-width: 1148px) {
  .offset4 {
    margin-left: 174px; } }

@media only screen and (max-width: 1004px) {
  .offset4 {
    margin-left: 150px; } }

@media only screen and (max-width: 860px) {
  .offset4 {
    margin-left: 126px; } }

@media only screen and (max-width: 716px) {
  .offset4 {
    margin-left: 102px; } }

@media only screen and (min-width: 1148px) {
  .offset4.border-left, .offset4.border-right {
    margin-left: 197px; } }

@media only screen and (max-width: 1148px) {
  .offset4.border-left, .offset4.border-right {
    margin-left: 173px; } }

@media only screen and (max-width: 1004px) {
  .offset4.border-left, .offset4.border-right {
    margin-left: 149px; } }

@media only screen and (max-width: 860px) {
  .offset4.border-left, .offset4.border-right {
    margin-left: 125px; } }

@media only screen and (max-width: 716px) {
  .offset4.border-left, .offset4.border-right {
    margin-left: 101px; } }

@media only screen and (min-width: 1148px) {
  .inset-l4 {
    padding-left: 188px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l4 {
    padding-left: 164px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l4 {
    padding-left: 140px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l4 {
    padding-left: 116px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l4 {
    padding-left: 92px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r4 {
    padding-right: 188px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r4 {
    padding-right: 164px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r4 {
    padding-right: 140px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r4 {
    padding-right: 116px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r4 {
    padding-right: 92px !important; } }

@media only screen and (min-width: 1148px) {
  .span5 {
    width: 225px; } }

@media only screen and (max-width: 1148px) {
  .span5 {
    width: 195px; } }

@media only screen and (max-width: 1004px) {
  .span5 {
    width: 165px; } }

@media only screen and (max-width: 860px) {
  .span5 {
    width: 135px; } }

@media only screen and (max-width: 716px) {
  .span5 {
    width: 105px; } }

@media only screen and (min-width: 1148px) {
  .offset5 {
    margin-left: 245px; } }

@media only screen and (max-width: 1148px) {
  .offset5 {
    margin-left: 215px; } }

@media only screen and (max-width: 1004px) {
  .offset5 {
    margin-left: 185px; } }

@media only screen and (max-width: 860px) {
  .offset5 {
    margin-left: 155px; } }

@media only screen and (max-width: 716px) {
  .offset5 {
    margin-left: 125px; } }

@media only screen and (min-width: 1148px) {
  .offset5.border-left, .offset5.border-right {
    margin-left: 244px; } }

@media only screen and (max-width: 1148px) {
  .offset5.border-left, .offset5.border-right {
    margin-left: 214px; } }

@media only screen and (max-width: 1004px) {
  .offset5.border-left, .offset5.border-right {
    margin-left: 184px; } }

@media only screen and (max-width: 860px) {
  .offset5.border-left, .offset5.border-right {
    margin-left: 154px; } }

@media only screen and (max-width: 716px) {
  .offset5.border-left, .offset5.border-right {
    margin-left: 124px; } }

@media only screen and (min-width: 1148px) {
  .inset-l5 {
    padding-left: 235px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l5 {
    padding-left: 205px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l5 {
    padding-left: 175px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l5 {
    padding-left: 145px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l5 {
    padding-left: 115px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r5 {
    padding-right: 235px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r5 {
    padding-right: 205px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r5 {
    padding-right: 175px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r5 {
    padding-right: 145px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r5 {
    padding-right: 115px !important; } }

@media only screen and (min-width: 1148px) {
  .span6 {
    width: 272px; } }

@media only screen and (max-width: 1148px) {
  .span6 {
    width: 236px; } }

@media only screen and (max-width: 1004px) {
  .span6 {
    width: 200px; } }

@media only screen and (max-width: 860px) {
  .span6 {
    width: 164px; } }

@media only screen and (max-width: 716px) {
  .span6 {
    width: 128px; } }

@media only screen and (min-width: 1148px) {
  .offset6 {
    margin-left: 292px; } }

@media only screen and (max-width: 1148px) {
  .offset6 {
    margin-left: 256px; } }

@media only screen and (max-width: 1004px) {
  .offset6 {
    margin-left: 220px; } }

@media only screen and (max-width: 860px) {
  .offset6 {
    margin-left: 184px; } }

@media only screen and (max-width: 716px) {
  .offset6 {
    margin-left: 148px; } }

@media only screen and (min-width: 1148px) {
  .offset6.border-left, .offset6.border-right {
    margin-left: 291px; } }

@media only screen and (max-width: 1148px) {
  .offset6.border-left, .offset6.border-right {
    margin-left: 255px; } }

@media only screen and (max-width: 1004px) {
  .offset6.border-left, .offset6.border-right {
    margin-left: 219px; } }

@media only screen and (max-width: 860px) {
  .offset6.border-left, .offset6.border-right {
    margin-left: 183px; } }

@media only screen and (max-width: 716px) {
  .offset6.border-left, .offset6.border-right {
    margin-left: 147px; } }

@media only screen and (min-width: 1148px) {
  .inset-l6 {
    padding-left: 282px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l6 {
    padding-left: 246px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l6 {
    padding-left: 210px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l6 {
    padding-left: 174px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l6 {
    padding-left: 138px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r6 {
    padding-right: 282px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r6 {
    padding-right: 246px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r6 {
    padding-right: 210px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r6 {
    padding-right: 174px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r6 {
    padding-right: 138px !important; } }

@media only screen and (min-width: 1148px) {
  .span7 {
    width: 319px; } }

@media only screen and (max-width: 1148px) {
  .span7 {
    width: 277px; } }

@media only screen and (max-width: 1004px) {
  .span7 {
    width: 235px; } }

@media only screen and (max-width: 860px) {
  .span7 {
    width: 193px; } }

@media only screen and (max-width: 716px) {
  .span7 {
    width: 151px; } }

@media only screen and (min-width: 1148px) {
  .offset7 {
    margin-left: 339px; } }

@media only screen and (max-width: 1148px) {
  .offset7 {
    margin-left: 297px; } }

@media only screen and (max-width: 1004px) {
  .offset7 {
    margin-left: 255px; } }

@media only screen and (max-width: 860px) {
  .offset7 {
    margin-left: 213px; } }

@media only screen and (max-width: 716px) {
  .offset7 {
    margin-left: 171px; } }

@media only screen and (min-width: 1148px) {
  .offset7.border-left, .offset7.border-right {
    margin-left: 338px; } }

@media only screen and (max-width: 1148px) {
  .offset7.border-left, .offset7.border-right {
    margin-left: 296px; } }

@media only screen and (max-width: 1004px) {
  .offset7.border-left, .offset7.border-right {
    margin-left: 254px; } }

@media only screen and (max-width: 860px) {
  .offset7.border-left, .offset7.border-right {
    margin-left: 212px; } }

@media only screen and (max-width: 716px) {
  .offset7.border-left, .offset7.border-right {
    margin-left: 170px; } }

@media only screen and (min-width: 1148px) {
  .inset-l7 {
    padding-left: 329px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l7 {
    padding-left: 287px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l7 {
    padding-left: 245px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l7 {
    padding-left: 203px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l7 {
    padding-left: 161px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r7 {
    padding-right: 329px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r7 {
    padding-right: 287px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r7 {
    padding-right: 245px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r7 {
    padding-right: 203px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r7 {
    padding-right: 161px !important; } }

@media only screen and (min-width: 1148px) {
  .span8 {
    width: 366px; } }

@media only screen and (max-width: 1148px) {
  .span8 {
    width: 318px; } }

@media only screen and (max-width: 1004px) {
  .span8 {
    width: 270px; } }

@media only screen and (max-width: 860px) {
  .span8 {
    width: 222px; } }

@media only screen and (max-width: 716px) {
  .span8 {
    width: 174px; } }

@media only screen and (min-width: 1148px) {
  .offset8 {
    margin-left: 386px; } }

@media only screen and (max-width: 1148px) {
  .offset8 {
    margin-left: 338px; } }

@media only screen and (max-width: 1004px) {
  .offset8 {
    margin-left: 290px; } }

@media only screen and (max-width: 860px) {
  .offset8 {
    margin-left: 242px; } }

@media only screen and (max-width: 716px) {
  .offset8 {
    margin-left: 194px; } }

@media only screen and (min-width: 1148px) {
  .offset8.border-left, .offset8.border-right {
    margin-left: 385px; } }

@media only screen and (max-width: 1148px) {
  .offset8.border-left, .offset8.border-right {
    margin-left: 337px; } }

@media only screen and (max-width: 1004px) {
  .offset8.border-left, .offset8.border-right {
    margin-left: 289px; } }

@media only screen and (max-width: 860px) {
  .offset8.border-left, .offset8.border-right {
    margin-left: 241px; } }

@media only screen and (max-width: 716px) {
  .offset8.border-left, .offset8.border-right {
    margin-left: 193px; } }

@media only screen and (min-width: 1148px) {
  .inset-l8 {
    padding-left: 376px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l8 {
    padding-left: 328px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l8 {
    padding-left: 280px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l8 {
    padding-left: 232px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l8 {
    padding-left: 184px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r8 {
    padding-right: 376px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r8 {
    padding-right: 328px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r8 {
    padding-right: 280px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r8 {
    padding-right: 232px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r8 {
    padding-right: 184px !important; } }

@media only screen and (min-width: 1148px) {
  .span9 {
    width: 413px; } }

@media only screen and (max-width: 1148px) {
  .span9 {
    width: 359px; } }

@media only screen and (max-width: 1004px) {
  .span9 {
    width: 305px; } }

@media only screen and (max-width: 860px) {
  .span9 {
    width: 251px; } }

@media only screen and (max-width: 716px) {
  .span9 {
    width: 197px; } }

@media only screen and (min-width: 1148px) {
  .offset9 {
    margin-left: 433px; } }

@media only screen and (max-width: 1148px) {
  .offset9 {
    margin-left: 379px; } }

@media only screen and (max-width: 1004px) {
  .offset9 {
    margin-left: 325px; } }

@media only screen and (max-width: 860px) {
  .offset9 {
    margin-left: 271px; } }

@media only screen and (max-width: 716px) {
  .offset9 {
    margin-left: 217px; } }

@media only screen and (min-width: 1148px) {
  .offset9.border-left, .offset9.border-right {
    margin-left: 432px; } }

@media only screen and (max-width: 1148px) {
  .offset9.border-left, .offset9.border-right {
    margin-left: 378px; } }

@media only screen and (max-width: 1004px) {
  .offset9.border-left, .offset9.border-right {
    margin-left: 324px; } }

@media only screen and (max-width: 860px) {
  .offset9.border-left, .offset9.border-right {
    margin-left: 270px; } }

@media only screen and (max-width: 716px) {
  .offset9.border-left, .offset9.border-right {
    margin-left: 216px; } }

@media only screen and (min-width: 1148px) {
  .inset-l9 {
    padding-left: 423px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l9 {
    padding-left: 369px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l9 {
    padding-left: 315px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l9 {
    padding-left: 261px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l9 {
    padding-left: 207px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r9 {
    padding-right: 423px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r9 {
    padding-right: 369px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r9 {
    padding-right: 315px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r9 {
    padding-right: 261px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r9 {
    padding-right: 207px !important; } }

@media only screen and (min-width: 1148px) {
  .span10 {
    width: 460px; } }

@media only screen and (max-width: 1148px) {
  .span10 {
    width: 400px; } }

@media only screen and (max-width: 1004px) {
  .span10 {
    width: 340px; } }

@media only screen and (max-width: 860px) {
  .span10 {
    width: 280px; } }

@media only screen and (max-width: 716px) {
  .span10 {
    width: 220px; } }

@media only screen and (min-width: 1148px) {
  .offset10 {
    margin-left: 480px; } }

@media only screen and (max-width: 1148px) {
  .offset10 {
    margin-left: 420px; } }

@media only screen and (max-width: 1004px) {
  .offset10 {
    margin-left: 360px; } }

@media only screen and (max-width: 860px) {
  .offset10 {
    margin-left: 300px; } }

@media only screen and (max-width: 716px) {
  .offset10 {
    margin-left: 240px; } }

@media only screen and (min-width: 1148px) {
  .offset10.border-left, .offset10.border-right {
    margin-left: 479px; } }

@media only screen and (max-width: 1148px) {
  .offset10.border-left, .offset10.border-right {
    margin-left: 419px; } }

@media only screen and (max-width: 1004px) {
  .offset10.border-left, .offset10.border-right {
    margin-left: 359px; } }

@media only screen and (max-width: 860px) {
  .offset10.border-left, .offset10.border-right {
    margin-left: 299px; } }

@media only screen and (max-width: 716px) {
  .offset10.border-left, .offset10.border-right {
    margin-left: 239px; } }

@media only screen and (min-width: 1148px) {
  .inset-l10 {
    padding-left: 470px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l10 {
    padding-left: 410px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l10 {
    padding-left: 350px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l10 {
    padding-left: 290px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l10 {
    padding-left: 230px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r10 {
    padding-right: 470px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r10 {
    padding-right: 410px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r10 {
    padding-right: 350px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r10 {
    padding-right: 290px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r10 {
    padding-right: 230px !important; } }

@media only screen and (min-width: 1148px) {
  .span11 {
    width: 507px; } }

@media only screen and (max-width: 1148px) {
  .span11 {
    width: 441px; } }

@media only screen and (max-width: 1004px) {
  .span11 {
    width: 375px; } }

@media only screen and (max-width: 860px) {
  .span11 {
    width: 309px; } }

@media only screen and (max-width: 716px) {
  .span11 {
    width: 243px; } }

@media only screen and (min-width: 1148px) {
  .offset11 {
    margin-left: 527px; } }

@media only screen and (max-width: 1148px) {
  .offset11 {
    margin-left: 461px; } }

@media only screen and (max-width: 1004px) {
  .offset11 {
    margin-left: 395px; } }

@media only screen and (max-width: 860px) {
  .offset11 {
    margin-left: 329px; } }

@media only screen and (max-width: 716px) {
  .offset11 {
    margin-left: 263px; } }

@media only screen and (min-width: 1148px) {
  .offset11.border-left, .offset11.border-right {
    margin-left: 526px; } }

@media only screen and (max-width: 1148px) {
  .offset11.border-left, .offset11.border-right {
    margin-left: 460px; } }

@media only screen and (max-width: 1004px) {
  .offset11.border-left, .offset11.border-right {
    margin-left: 394px; } }

@media only screen and (max-width: 860px) {
  .offset11.border-left, .offset11.border-right {
    margin-left: 328px; } }

@media only screen and (max-width: 716px) {
  .offset11.border-left, .offset11.border-right {
    margin-left: 262px; } }

@media only screen and (min-width: 1148px) {
  .inset-l11 {
    padding-left: 517px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l11 {
    padding-left: 451px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l11 {
    padding-left: 385px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l11 {
    padding-left: 319px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l11 {
    padding-left: 253px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r11 {
    padding-right: 517px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r11 {
    padding-right: 451px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r11 {
    padding-right: 385px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r11 {
    padding-right: 319px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r11 {
    padding-right: 253px !important; } }

@media only screen and (min-width: 1148px) {
  .span12 {
    width: 554px; } }

@media only screen and (max-width: 1148px) {
  .span12 {
    width: 482px; } }

@media only screen and (max-width: 1004px) {
  .span12 {
    width: 410px; } }

@media only screen and (max-width: 860px) {
  .span12 {
    width: 338px; } }

@media only screen and (max-width: 716px) {
  .span12 {
    width: 266px; } }

@media only screen and (min-width: 1148px) {
  .offset12 {
    margin-left: 574px; } }

@media only screen and (max-width: 1148px) {
  .offset12 {
    margin-left: 502px; } }

@media only screen and (max-width: 1004px) {
  .offset12 {
    margin-left: 430px; } }

@media only screen and (max-width: 860px) {
  .offset12 {
    margin-left: 358px; } }

@media only screen and (max-width: 716px) {
  .offset12 {
    margin-left: 286px; } }

@media only screen and (min-width: 1148px) {
  .offset12.border-left, .offset12.border-right {
    margin-left: 573px; } }

@media only screen and (max-width: 1148px) {
  .offset12.border-left, .offset12.border-right {
    margin-left: 501px; } }

@media only screen and (max-width: 1004px) {
  .offset12.border-left, .offset12.border-right {
    margin-left: 429px; } }

@media only screen and (max-width: 860px) {
  .offset12.border-left, .offset12.border-right {
    margin-left: 357px; } }

@media only screen and (max-width: 716px) {
  .offset12.border-left, .offset12.border-right {
    margin-left: 285px; } }

@media only screen and (min-width: 1148px) {
  .inset-l12 {
    padding-left: 564px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l12 {
    padding-left: 492px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l12 {
    padding-left: 420px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l12 {
    padding-left: 348px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l12 {
    padding-left: 276px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r12 {
    padding-right: 564px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r12 {
    padding-right: 492px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r12 {
    padding-right: 420px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r12 {
    padding-right: 348px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r12 {
    padding-right: 276px !important; } }

@media only screen and (min-width: 1148px) {
  .span13 {
    width: 601px; } }

@media only screen and (max-width: 1148px) {
  .span13 {
    width: 523px; } }

@media only screen and (max-width: 1004px) {
  .span13 {
    width: 445px; } }

@media only screen and (max-width: 860px) {
  .span13 {
    width: 367px; } }

@media only screen and (max-width: 716px) {
  .span13 {
    width: 289px; } }

@media only screen and (min-width: 1148px) {
  .offset13 {
    margin-left: 621px; } }

@media only screen and (max-width: 1148px) {
  .offset13 {
    margin-left: 543px; } }

@media only screen and (max-width: 1004px) {
  .offset13 {
    margin-left: 465px; } }

@media only screen and (max-width: 860px) {
  .offset13 {
    margin-left: 387px; } }

@media only screen and (max-width: 716px) {
  .offset13 {
    margin-left: 309px; } }

@media only screen and (min-width: 1148px) {
  .offset13.border-left, .offset13.border-right {
    margin-left: 620px; } }

@media only screen and (max-width: 1148px) {
  .offset13.border-left, .offset13.border-right {
    margin-left: 542px; } }

@media only screen and (max-width: 1004px) {
  .offset13.border-left, .offset13.border-right {
    margin-left: 464px; } }

@media only screen and (max-width: 860px) {
  .offset13.border-left, .offset13.border-right {
    margin-left: 386px; } }

@media only screen and (max-width: 716px) {
  .offset13.border-left, .offset13.border-right {
    margin-left: 308px; } }

@media only screen and (min-width: 1148px) {
  .inset-l13 {
    padding-left: 611px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l13 {
    padding-left: 533px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l13 {
    padding-left: 455px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l13 {
    padding-left: 377px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l13 {
    padding-left: 299px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r13 {
    padding-right: 611px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r13 {
    padding-right: 533px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r13 {
    padding-right: 455px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r13 {
    padding-right: 377px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r13 {
    padding-right: 299px !important; } }

@media only screen and (min-width: 1148px) {
  .span14 {
    width: 648px; } }

@media only screen and (max-width: 1148px) {
  .span14 {
    width: 564px; } }

@media only screen and (max-width: 1004px) {
  .span14 {
    width: 480px; } }

@media only screen and (max-width: 860px) {
  .span14 {
    width: 396px; } }

@media only screen and (max-width: 716px) {
  .span14 {
    width: 312px; } }

@media only screen and (min-width: 1148px) {
  .offset14 {
    margin-left: 668px; } }

@media only screen and (max-width: 1148px) {
  .offset14 {
    margin-left: 584px; } }

@media only screen and (max-width: 1004px) {
  .offset14 {
    margin-left: 500px; } }

@media only screen and (max-width: 860px) {
  .offset14 {
    margin-left: 416px; } }

@media only screen and (max-width: 716px) {
  .offset14 {
    margin-left: 332px; } }

@media only screen and (min-width: 1148px) {
  .offset14.border-left, .offset14.border-right {
    margin-left: 667px; } }

@media only screen and (max-width: 1148px) {
  .offset14.border-left, .offset14.border-right {
    margin-left: 583px; } }

@media only screen and (max-width: 1004px) {
  .offset14.border-left, .offset14.border-right {
    margin-left: 499px; } }

@media only screen and (max-width: 860px) {
  .offset14.border-left, .offset14.border-right {
    margin-left: 415px; } }

@media only screen and (max-width: 716px) {
  .offset14.border-left, .offset14.border-right {
    margin-left: 331px; } }

@media only screen and (min-width: 1148px) {
  .inset-l14 {
    padding-left: 658px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l14 {
    padding-left: 574px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l14 {
    padding-left: 490px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l14 {
    padding-left: 406px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l14 {
    padding-left: 322px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r14 {
    padding-right: 658px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r14 {
    padding-right: 574px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r14 {
    padding-right: 490px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r14 {
    padding-right: 406px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r14 {
    padding-right: 322px !important; } }

@media only screen and (min-width: 1148px) {
  .span15 {
    width: 695px; } }

@media only screen and (max-width: 1148px) {
  .span15 {
    width: 605px; } }

@media only screen and (max-width: 1004px) {
  .span15 {
    width: 515px; } }

@media only screen and (max-width: 860px) {
  .span15 {
    width: 425px; } }

@media only screen and (max-width: 716px) {
  .span15 {
    width: 335px; } }

@media only screen and (min-width: 1148px) {
  .offset15 {
    margin-left: 715px; } }

@media only screen and (max-width: 1148px) {
  .offset15 {
    margin-left: 625px; } }

@media only screen and (max-width: 1004px) {
  .offset15 {
    margin-left: 535px; } }

@media only screen and (max-width: 860px) {
  .offset15 {
    margin-left: 445px; } }

@media only screen and (max-width: 716px) {
  .offset15 {
    margin-left: 355px; } }

@media only screen and (min-width: 1148px) {
  .offset15.border-left, .offset15.border-right {
    margin-left: 714px; } }

@media only screen and (max-width: 1148px) {
  .offset15.border-left, .offset15.border-right {
    margin-left: 624px; } }

@media only screen and (max-width: 1004px) {
  .offset15.border-left, .offset15.border-right {
    margin-left: 534px; } }

@media only screen and (max-width: 860px) {
  .offset15.border-left, .offset15.border-right {
    margin-left: 444px; } }

@media only screen and (max-width: 716px) {
  .offset15.border-left, .offset15.border-right {
    margin-left: 354px; } }

@media only screen and (min-width: 1148px) {
  .inset-l15 {
    padding-left: 705px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l15 {
    padding-left: 615px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l15 {
    padding-left: 525px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l15 {
    padding-left: 435px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l15 {
    padding-left: 345px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r15 {
    padding-right: 705px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r15 {
    padding-right: 615px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r15 {
    padding-right: 525px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r15 {
    padding-right: 435px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r15 {
    padding-right: 345px !important; } }

@media only screen and (min-width: 1148px) {
  .span16 {
    width: 742px; } }

@media only screen and (max-width: 1148px) {
  .span16 {
    width: 646px; } }

@media only screen and (max-width: 1004px) {
  .span16 {
    width: 550px; } }

@media only screen and (max-width: 860px) {
  .span16 {
    width: 454px; } }

@media only screen and (max-width: 716px) {
  .span16 {
    width: 358px; } }

@media only screen and (min-width: 1148px) {
  .offset16 {
    margin-left: 762px; } }

@media only screen and (max-width: 1148px) {
  .offset16 {
    margin-left: 666px; } }

@media only screen and (max-width: 1004px) {
  .offset16 {
    margin-left: 570px; } }

@media only screen and (max-width: 860px) {
  .offset16 {
    margin-left: 474px; } }

@media only screen and (max-width: 716px) {
  .offset16 {
    margin-left: 378px; } }

@media only screen and (min-width: 1148px) {
  .offset16.border-left, .offset16.border-right {
    margin-left: 761px; } }

@media only screen and (max-width: 1148px) {
  .offset16.border-left, .offset16.border-right {
    margin-left: 665px; } }

@media only screen and (max-width: 1004px) {
  .offset16.border-left, .offset16.border-right {
    margin-left: 569px; } }

@media only screen and (max-width: 860px) {
  .offset16.border-left, .offset16.border-right {
    margin-left: 473px; } }

@media only screen and (max-width: 716px) {
  .offset16.border-left, .offset16.border-right {
    margin-left: 377px; } }

@media only screen and (min-width: 1148px) {
  .inset-l16 {
    padding-left: 752px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l16 {
    padding-left: 656px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l16 {
    padding-left: 560px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l16 {
    padding-left: 464px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l16 {
    padding-left: 368px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r16 {
    padding-right: 752px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r16 {
    padding-right: 656px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r16 {
    padding-right: 560px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r16 {
    padding-right: 464px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r16 {
    padding-right: 368px !important; } }

@media only screen and (min-width: 1148px) {
  .span17 {
    width: 789px; } }

@media only screen and (max-width: 1148px) {
  .span17 {
    width: 687px; } }

@media only screen and (max-width: 1004px) {
  .span17 {
    width: 585px; } }

@media only screen and (max-width: 860px) {
  .span17 {
    width: 483px; } }

@media only screen and (max-width: 716px) {
  .span17 {
    width: 381px; } }

@media only screen and (min-width: 1148px) {
  .offset17 {
    margin-left: 809px; } }

@media only screen and (max-width: 1148px) {
  .offset17 {
    margin-left: 707px; } }

@media only screen and (max-width: 1004px) {
  .offset17 {
    margin-left: 605px; } }

@media only screen and (max-width: 860px) {
  .offset17 {
    margin-left: 503px; } }

@media only screen and (max-width: 716px) {
  .offset17 {
    margin-left: 401px; } }

@media only screen and (min-width: 1148px) {
  .offset17.border-left, .offset17.border-right {
    margin-left: 808px; } }

@media only screen and (max-width: 1148px) {
  .offset17.border-left, .offset17.border-right {
    margin-left: 706px; } }

@media only screen and (max-width: 1004px) {
  .offset17.border-left, .offset17.border-right {
    margin-left: 604px; } }

@media only screen and (max-width: 860px) {
  .offset17.border-left, .offset17.border-right {
    margin-left: 502px; } }

@media only screen and (max-width: 716px) {
  .offset17.border-left, .offset17.border-right {
    margin-left: 400px; } }

@media only screen and (min-width: 1148px) {
  .inset-l17 {
    padding-left: 799px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l17 {
    padding-left: 697px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l17 {
    padding-left: 595px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l17 {
    padding-left: 493px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l17 {
    padding-left: 391px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r17 {
    padding-right: 799px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r17 {
    padding-right: 697px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r17 {
    padding-right: 595px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r17 {
    padding-right: 493px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r17 {
    padding-right: 391px !important; } }

@media only screen and (min-width: 1148px) {
  .span18 {
    width: 836px; } }

@media only screen and (max-width: 1148px) {
  .span18 {
    width: 728px; } }

@media only screen and (max-width: 1004px) {
  .span18 {
    width: 620px; } }

@media only screen and (max-width: 860px) {
  .span18 {
    width: 512px; } }

@media only screen and (max-width: 716px) {
  .span18 {
    width: 404px; } }

@media only screen and (min-width: 1148px) {
  .offset18 {
    margin-left: 856px; } }

@media only screen and (max-width: 1148px) {
  .offset18 {
    margin-left: 748px; } }

@media only screen and (max-width: 1004px) {
  .offset18 {
    margin-left: 640px; } }

@media only screen and (max-width: 860px) {
  .offset18 {
    margin-left: 532px; } }

@media only screen and (max-width: 716px) {
  .offset18 {
    margin-left: 424px; } }

@media only screen and (min-width: 1148px) {
  .offset18.border-left, .offset18.border-right {
    margin-left: 855px; } }

@media only screen and (max-width: 1148px) {
  .offset18.border-left, .offset18.border-right {
    margin-left: 747px; } }

@media only screen and (max-width: 1004px) {
  .offset18.border-left, .offset18.border-right {
    margin-left: 639px; } }

@media only screen and (max-width: 860px) {
  .offset18.border-left, .offset18.border-right {
    margin-left: 531px; } }

@media only screen and (max-width: 716px) {
  .offset18.border-left, .offset18.border-right {
    margin-left: 423px; } }

@media only screen and (min-width: 1148px) {
  .inset-l18 {
    padding-left: 846px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l18 {
    padding-left: 738px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l18 {
    padding-left: 630px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l18 {
    padding-left: 522px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l18 {
    padding-left: 414px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r18 {
    padding-right: 846px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r18 {
    padding-right: 738px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r18 {
    padding-right: 630px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r18 {
    padding-right: 522px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r18 {
    padding-right: 414px !important; } }

@media only screen and (min-width: 1148px) {
  .span19 {
    width: 883px; } }

@media only screen and (max-width: 1148px) {
  .span19 {
    width: 769px; } }

@media only screen and (max-width: 1004px) {
  .span19 {
    width: 655px; } }

@media only screen and (max-width: 860px) {
  .span19 {
    width: 541px; } }

@media only screen and (max-width: 716px) {
  .span19 {
    width: 427px; } }

@media only screen and (min-width: 1148px) {
  .offset19 {
    margin-left: 903px; } }

@media only screen and (max-width: 1148px) {
  .offset19 {
    margin-left: 789px; } }

@media only screen and (max-width: 1004px) {
  .offset19 {
    margin-left: 675px; } }

@media only screen and (max-width: 860px) {
  .offset19 {
    margin-left: 561px; } }

@media only screen and (max-width: 716px) {
  .offset19 {
    margin-left: 447px; } }

@media only screen and (min-width: 1148px) {
  .offset19.border-left, .offset19.border-right {
    margin-left: 902px; } }

@media only screen and (max-width: 1148px) {
  .offset19.border-left, .offset19.border-right {
    margin-left: 788px; } }

@media only screen and (max-width: 1004px) {
  .offset19.border-left, .offset19.border-right {
    margin-left: 674px; } }

@media only screen and (max-width: 860px) {
  .offset19.border-left, .offset19.border-right {
    margin-left: 560px; } }

@media only screen and (max-width: 716px) {
  .offset19.border-left, .offset19.border-right {
    margin-left: 446px; } }

@media only screen and (min-width: 1148px) {
  .inset-l19 {
    padding-left: 893px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l19 {
    padding-left: 779px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l19 {
    padding-left: 665px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l19 {
    padding-left: 551px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l19 {
    padding-left: 437px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r19 {
    padding-right: 893px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r19 {
    padding-right: 779px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r19 {
    padding-right: 665px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r19 {
    padding-right: 551px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r19 {
    padding-right: 437px !important; } }

@media only screen and (min-width: 1148px) {
  .span20 {
    width: 930px; } }

@media only screen and (max-width: 1148px) {
  .span20 {
    width: 810px; } }

@media only screen and (max-width: 1004px) {
  .span20 {
    width: 690px; } }

@media only screen and (max-width: 860px) {
  .span20 {
    width: 570px; } }

@media only screen and (max-width: 716px) {
  .span20 {
    width: 450px; } }

@media only screen and (min-width: 1148px) {
  .offset20 {
    margin-left: 950px; } }

@media only screen and (max-width: 1148px) {
  .offset20 {
    margin-left: 830px; } }

@media only screen and (max-width: 1004px) {
  .offset20 {
    margin-left: 710px; } }

@media only screen and (max-width: 860px) {
  .offset20 {
    margin-left: 590px; } }

@media only screen and (max-width: 716px) {
  .offset20 {
    margin-left: 470px; } }

@media only screen and (min-width: 1148px) {
  .offset20.border-left, .offset20.border-right {
    margin-left: 949px; } }

@media only screen and (max-width: 1148px) {
  .offset20.border-left, .offset20.border-right {
    margin-left: 829px; } }

@media only screen and (max-width: 1004px) {
  .offset20.border-left, .offset20.border-right {
    margin-left: 709px; } }

@media only screen and (max-width: 860px) {
  .offset20.border-left, .offset20.border-right {
    margin-left: 589px; } }

@media only screen and (max-width: 716px) {
  .offset20.border-left, .offset20.border-right {
    margin-left: 469px; } }

@media only screen and (min-width: 1148px) {
  .inset-l20 {
    padding-left: 940px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l20 {
    padding-left: 820px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l20 {
    padding-left: 700px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l20 {
    padding-left: 580px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l20 {
    padding-left: 460px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r20 {
    padding-right: 940px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r20 {
    padding-right: 820px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r20 {
    padding-right: 700px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r20 {
    padding-right: 580px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r20 {
    padding-right: 460px !important; } }

@media only screen and (min-width: 1148px) {
  .span21 {
    width: 977px; } }

@media only screen and (max-width: 1148px) {
  .span21 {
    width: 851px; } }

@media only screen and (max-width: 1004px) {
  .span21 {
    width: 725px; } }

@media only screen and (max-width: 860px) {
  .span21 {
    width: 599px; } }

@media only screen and (max-width: 716px) {
  .span21 {
    width: 473px; } }

@media only screen and (min-width: 1148px) {
  .offset21 {
    margin-left: 997px; } }

@media only screen and (max-width: 1148px) {
  .offset21 {
    margin-left: 871px; } }

@media only screen and (max-width: 1004px) {
  .offset21 {
    margin-left: 745px; } }

@media only screen and (max-width: 860px) {
  .offset21 {
    margin-left: 619px; } }

@media only screen and (max-width: 716px) {
  .offset21 {
    margin-left: 493px; } }

@media only screen and (min-width: 1148px) {
  .offset21.border-left, .offset21.border-right {
    margin-left: 996px; } }

@media only screen and (max-width: 1148px) {
  .offset21.border-left, .offset21.border-right {
    margin-left: 870px; } }

@media only screen and (max-width: 1004px) {
  .offset21.border-left, .offset21.border-right {
    margin-left: 744px; } }

@media only screen and (max-width: 860px) {
  .offset21.border-left, .offset21.border-right {
    margin-left: 618px; } }

@media only screen and (max-width: 716px) {
  .offset21.border-left, .offset21.border-right {
    margin-left: 492px; } }

@media only screen and (min-width: 1148px) {
  .inset-l21 {
    padding-left: 987px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l21 {
    padding-left: 861px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l21 {
    padding-left: 735px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l21 {
    padding-left: 609px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l21 {
    padding-left: 483px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r21 {
    padding-right: 987px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r21 {
    padding-right: 861px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r21 {
    padding-right: 735px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r21 {
    padding-right: 609px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r21 {
    padding-right: 483px !important; } }

@media only screen and (min-width: 1148px) {
  .span22 {
    width: 1024px; } }

@media only screen and (max-width: 1148px) {
  .span22 {
    width: 892px; } }

@media only screen and (max-width: 1004px) {
  .span22 {
    width: 760px; } }

@media only screen and (max-width: 860px) {
  .span22 {
    width: 628px; } }

@media only screen and (max-width: 716px) {
  .span22 {
    width: 496px; } }

@media only screen and (min-width: 1148px) {
  .offset22 {
    margin-left: 1044px; } }

@media only screen and (max-width: 1148px) {
  .offset22 {
    margin-left: 912px; } }

@media only screen and (max-width: 1004px) {
  .offset22 {
    margin-left: 780px; } }

@media only screen and (max-width: 860px) {
  .offset22 {
    margin-left: 648px; } }

@media only screen and (max-width: 716px) {
  .offset22 {
    margin-left: 516px; } }

@media only screen and (min-width: 1148px) {
  .offset22.border-left, .offset22.border-right {
    margin-left: 1043px; } }

@media only screen and (max-width: 1148px) {
  .offset22.border-left, .offset22.border-right {
    margin-left: 911px; } }

@media only screen and (max-width: 1004px) {
  .offset22.border-left, .offset22.border-right {
    margin-left: 779px; } }

@media only screen and (max-width: 860px) {
  .offset22.border-left, .offset22.border-right {
    margin-left: 647px; } }

@media only screen and (max-width: 716px) {
  .offset22.border-left, .offset22.border-right {
    margin-left: 515px; } }

@media only screen and (min-width: 1148px) {
  .inset-l22 {
    padding-left: 1034px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l22 {
    padding-left: 902px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l22 {
    padding-left: 770px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l22 {
    padding-left: 638px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l22 {
    padding-left: 506px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r22 {
    padding-right: 1034px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r22 {
    padding-right: 902px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r22 {
    padding-right: 770px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r22 {
    padding-right: 638px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r22 {
    padding-right: 506px !important; } }

@media only screen and (min-width: 1148px) {
  .span23 {
    width: 1071px; } }

@media only screen and (max-width: 1148px) {
  .span23 {
    width: 933px; } }

@media only screen and (max-width: 1004px) {
  .span23 {
    width: 795px; } }

@media only screen and (max-width: 860px) {
  .span23 {
    width: 657px; } }

@media only screen and (max-width: 716px) {
  .span23 {
    width: 519px; } }

@media only screen and (min-width: 1148px) {
  .offset23 {
    margin-left: 1091px; } }

@media only screen and (max-width: 1148px) {
  .offset23 {
    margin-left: 953px; } }

@media only screen and (max-width: 1004px) {
  .offset23 {
    margin-left: 815px; } }

@media only screen and (max-width: 860px) {
  .offset23 {
    margin-left: 677px; } }

@media only screen and (max-width: 716px) {
  .offset23 {
    margin-left: 539px; } }

@media only screen and (min-width: 1148px) {
  .offset23.border-left, .offset23.border-right {
    margin-left: 1090px; } }

@media only screen and (max-width: 1148px) {
  .offset23.border-left, .offset23.border-right {
    margin-left: 952px; } }

@media only screen and (max-width: 1004px) {
  .offset23.border-left, .offset23.border-right {
    margin-left: 814px; } }

@media only screen and (max-width: 860px) {
  .offset23.border-left, .offset23.border-right {
    margin-left: 676px; } }

@media only screen and (max-width: 716px) {
  .offset23.border-left, .offset23.border-right {
    margin-left: 538px; } }

@media only screen and (min-width: 1148px) {
  .inset-l23 {
    padding-left: 1081px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l23 {
    padding-left: 943px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l23 {
    padding-left: 805px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l23 {
    padding-left: 667px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l23 {
    padding-left: 529px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r23 {
    padding-right: 1081px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r23 {
    padding-right: 943px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r23 {
    padding-right: 805px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r23 {
    padding-right: 667px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r23 {
    padding-right: 529px !important; } }

@media only screen and (min-width: 1148px) {
  .span24 {
    width: 1118px; } }

@media only screen and (max-width: 1148px) {
  .span24 {
    width: 974px; } }

@media only screen and (max-width: 1004px) {
  .span24 {
    width: 830px; } }

@media only screen and (max-width: 860px) {
  .span24 {
    width: 686px; } }

@media only screen and (max-width: 716px) {
  .span24 {
    width: 542px; } }

@media only screen and (min-width: 1148px) {
  .offset24 {
    margin-left: 1138px; } }

@media only screen and (max-width: 1148px) {
  .offset24 {
    margin-left: 994px; } }

@media only screen and (max-width: 1004px) {
  .offset24 {
    margin-left: 850px; } }

@media only screen and (max-width: 860px) {
  .offset24 {
    margin-left: 706px; } }

@media only screen and (max-width: 716px) {
  .offset24 {
    margin-left: 562px; } }

@media only screen and (min-width: 1148px) {
  .offset24.border-left, .offset24.border-right {
    margin-left: 1137px; } }

@media only screen and (max-width: 1148px) {
  .offset24.border-left, .offset24.border-right {
    margin-left: 993px; } }

@media only screen and (max-width: 1004px) {
  .offset24.border-left, .offset24.border-right {
    margin-left: 849px; } }

@media only screen and (max-width: 860px) {
  .offset24.border-left, .offset24.border-right {
    margin-left: 705px; } }

@media only screen and (max-width: 716px) {
  .offset24.border-left, .offset24.border-right {
    margin-left: 561px; } }

@media only screen and (min-width: 1148px) {
  .inset-l24 {
    padding-left: 1128px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-l24 {
    padding-left: 984px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-l24 {
    padding-left: 840px !important; } }

@media only screen and (max-width: 860px) {
  .inset-l24 {
    padding-left: 696px !important; } }

@media only screen and (max-width: 716px) {
  .inset-l24 {
    padding-left: 552px !important; } }

@media only screen and (min-width: 1148px) {
  .inset-r24 {
    padding-right: 1128px !important; } }

@media only screen and (max-width: 1148px) {
  .inset-r24 {
    padding-right: 984px !important; } }

@media only screen and (max-width: 1004px) {
  .inset-r24 {
    padding-right: 840px !important; } }

@media only screen and (max-width: 860px) {
  .inset-r24 {
    padding-right: 696px !important; } }

@media only screen and (max-width: 716px) {
  .inset-r24 {
    padding-right: 552px !important; } }

/* --- Small Size 100% Content Area --- */
@media only screen and (max-width: 716px) {
  #content-wrapper aside, #content-wrapper form [class*="span"] {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  #content-wrapper .lucy-wrapper .span13 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span13.border-left, #content-wrapper .lucy-wrapper .span13.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span13 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span14 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span14.border-left, #content-wrapper .lucy-wrapper .span14.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span14 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span15 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span15.border-left, #content-wrapper .lucy-wrapper .span15.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span15 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span16 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span16.border-left, #content-wrapper .lucy-wrapper .span16.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span16 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span17 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span17.border-left, #content-wrapper .lucy-wrapper .span17.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span17 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span18 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span18.border-left, #content-wrapper .lucy-wrapper .span18.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span18 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span19 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span19.border-left, #content-wrapper .lucy-wrapper .span19.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span19 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span20 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span20.border-left, #content-wrapper .lucy-wrapper .span20.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span20 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span21 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span21.border-left, #content-wrapper .lucy-wrapper .span21.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span21 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span22 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span22.border-left, #content-wrapper .lucy-wrapper .span22.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span22 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span23 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span23.border-left, #content-wrapper .lucy-wrapper .span23.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span23 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .span24 {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .span24.border-left, #content-wrapper .lucy-wrapper .span24.border-right {
      border: none !important; }
    #content-wrapper .lucy-wrapper .span24 .row {
      margin: 0 !important; }
  #content-wrapper .lucy-wrapper .row {
    padding-left: 10px !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .row .row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row form.row {
      padding-left: 10px !important;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
    #content-wrapper .lucy-wrapper .row .span13 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span14 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span15 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span16 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span17 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span18 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span19 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span20 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span21 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span22 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span23 form.row {
      padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row .span24 form.row {
      padding-left: 0 !important; } }

/* --- XSmall is 100% --- */
@media only screen and (max-width: 572px) {
  [class*="span"] {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    [class*="span"][class*="inset"] {
      padding-left: 0 !important;
      padding-right: 0 !important; }
    [class*="span"].border-left, [class*="span"].border-right {
      border: none !important; }
  #content-wrapper .lucy-wrapper .row {
    padding-left: 0 !important; }
    #content-wrapper .lucy-wrapper .row form.row {
      padding-left: 0 !important;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; } }

/* --- Form Field Sizing --- */
input[class*="span"], textarea[class*="span"], select[class*="span"] {
  margin-left: 0; }

/* --- 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 (min-width: 1148px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: inline-block; }
    #breakpoints .breakpoint.xlarge {
      display: none; }
    #breakpoints .breakpoint.large {
      display: none; }
    #breakpoints .breakpoint.medium {
      display: none; }
    #breakpoints .breakpoint.small {
      display: none; }
    #breakpoints .breakpoint.xsmall {
      display: none; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }
  @media only screen and (max-width: 1148px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: none; }
    #breakpoints .breakpoint.xlarge {
      display: inline-block; }
    #breakpoints .breakpoint.large {
      display: none; }
    #breakpoints .breakpoint.medium {
      display: none; }
    #breakpoints .breakpoint.small {
      display: none; }
    #breakpoints .breakpoint.xsmall {
      display: none; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }
  @media only screen and (max-width: 1004px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: none; }
    #breakpoints .breakpoint.xlarge {
      display: none; }
    #breakpoints .breakpoint.large {
      display: inline-block; }
    #breakpoints .breakpoint.medium {
      display: none; }
    #breakpoints .breakpoint.small {
      display: none; }
    #breakpoints .breakpoint.xsmall {
      display: none; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }
  @media only screen and (max-width: 860px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: none; }
    #breakpoints .breakpoint.xlarge {
      display: none; }
    #breakpoints .breakpoint.large {
      display: none; }
    #breakpoints .breakpoint.medium {
      display: inline-block; }
    #breakpoints .breakpoint.small {
      display: none; }
    #breakpoints .breakpoint.xsmall {
      display: none; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }
  @media only screen and (max-width: 716px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: none; }
    #breakpoints .breakpoint.xlarge {
      display: none; }
    #breakpoints .breakpoint.large {
      display: none; }
    #breakpoints .breakpoint.medium {
      display: none; }
    #breakpoints .breakpoint.small {
      display: inline-block; }
    #breakpoints .breakpoint.xsmall {
      display: none; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }
  @media only screen and (max-width: 572px) {
    #breakpoints .breakpoint.xxxlarge {
      display: none; }
    #breakpoints .breakpoint.xxlarge {
      display: none; }
    #breakpoints .breakpoint.xlarge {
      display: none; }
    #breakpoints .breakpoint.large {
      display: none; }
    #breakpoints .breakpoint.medium {
      display: none; }
    #breakpoints .breakpoint.small {
      display: none; }
    #breakpoints .breakpoint.xsmall {
      display: inline-block; }
    #breakpoints .breakpoint.xxsmall {
      display: none; } }

/* --- 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; }
  @media only screen and (max-width: 1004px) {
    #membership-intro {
      padding-bottom: 1em; } }

#memberships-table {
  border-collapse: collapse; }
  @media only screen and (max-width: 1004px) {
    #memberships-table {
      display: none; } }
  #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: #222;
      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; }
  @media only screen and (max-width: 1004px) {
    #memberships-table-mobile {
      display: block; } }
  #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; }
  @media only screen and (max-width: 716px) {
    #membership-join .option {
      padding: 1.5em; } }
  #membership-join .option h2 {
    margin-bottom: .35em;
    font-size: 1.5em;
    line-height: 1; }
    @media only screen and (max-width: 716px) {
      #membership-join .option h2 {
        font-size: 1em; } }
    #membership-join .option h2 span {
      color: #000; }
  #membership-join .option ul {
    margin: 0; }

#membership-join .actions {
  margin-top: 2.5em; }
  @media only screen and (max-width: 716px) {
    #membership-join .actions .button, #membership-join .actions .cart-button, #membership-join .actions .sidebar-callout p.action, .sidebar-callout #membership-join .actions p.action {
      display: block;
      text-align: center;
      line-height: 1; } }

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

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

#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: #D7D7D7;
    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 #D7D7D7; }
  #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 #D7D7D7; }
  #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 #D7D7D7; }
  #account-page table td {
    padding: .75em;
    border-bottom: 1px solid #D7D7D7; }
    #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; }
  @media only screen and (max-width: 572px) {
    #donate-intro .span8 img {
      display: none; } }

#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; }
  @media only screen and (max-width: 572px) {
    #donate-form .amount {
      padding: 2em !important;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      #donate-form .amount p {
        margin-bottom: 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: #222;
    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; }
    @media only screen and (max-width: 572px) {
      #donate-form .recurrences div {
        width: 50%;
        border-bottom: 1px solid #FFF; }
        #donate-form .recurrences div:nth-child(odd) {
          border-right: none; } }
    #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; }
  @media only screen and (max-width: 572px) {
    #donate-form .designate {
      padding: 2em;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; } }

/* --- Staff --- */
#staff-list .member {
  padding: 2em 0 .5em 0;
  border-bottom: 1px solid #D7D7D7; }
  #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, #staff-list .member .top .span10 .inner {
      position: absolute;
      top: 50%;
      transform: translate(0, -50%); }
      #staff-list .member .top .span11 .inner h2, #staff-list .member .top .span11 .inner p, #staff-list .member .top .span10 .inner h2, #staff-list .member .top .span10 .inner p {
        position: relative;
        left: 10px; }
        @media only screen and (max-width: 716px) {
          #staff-list .member .top .span11 .inner h2, #staff-list .member .top .span11 .inner p, #staff-list .member .top .span10 .inner h2, #staff-list .member .top .span10 .inner p {
            left: 0; } }
      @media only screen and (max-width: 572px) {
        #staff-list .member .top .span11 .inner, #staff-list .member .top .span10 .inner {
          position: relative;
          top: auto;
          margin-top: 1em;
          transform: none; } }
    @media only screen and (max-width: 716px) {
      #staff-list .member .top .span4 {
        margin-left: 0; } }
  #staff-list .member:last-child {
    border-bottom: none; }

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

/* --- 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 #D7D7D7; }
  #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 #D7D7D7; }
    #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 #D7D7D7; }
  #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 #D7D7D7; }
    #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 #D7D7D7; }

/* --- Calendar --- */
#calendar {
  /* --- List View --- */
  /* --- Calendar View --- */ }
  #calendar .lucy-wrapper {
    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: #222;
    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; }
        @media only screen and (max-width: 572px) {
          #calendar #calendar-header ul.right {
            display: none; } }
      #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; }
        @media only screen and (max-width: 572px) {
          #calendar #calendar-header ul a {
            margin-right: 1em; } }
        #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; }
        @media only screen and (max-width: 572px) {
          #calendar #calendar-header ul a.print {
            display: none; } }
        #calendar #calendar-header ul a.print:before {
          font-size: 14px; }
    @media only screen and (max-width: 572px) {
      #calendar #calendar-header {
        height: 0;
        overflow: hidden; } }
  #calendar .filters {
    position: absolute;
    top: 0;
    right: 0;
    list-style-type: none;
    padding-left: 0;
    padding-top: 10px; }
    @media only screen and (max-width: 572px) {
      #calendar .filters {
        position: relative;
        clear: both; } }
    #calendar .filters li {
      display: inline-block; }
    #calendar .filters a {
      padding-right: 1em;
      font-size: .875em;
      color: #222; }
      @media only screen and (max-width: 572px) {
        #calendar .filters a {
          padding-right: 1em; } }
      #calendar .filters a:last-of-type {
        padding-right: 0; }
      #calendar .filters a.all {
        margin-right: 1em;
        border-right: 1px solid #D7D7D7; }
        @media only screen and (max-width: 572px) {
          #calendar .filters a.all {
            margin-right: 1em; } }
      #calendar .filters a.active {
        font-weight: 700; }
  #calendar #list {
    border-bottom: 1px solid #D7D7D7; }
    #calendar #list .event {
      position: relative;
      display: block;
      color: #222;
      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; }
          @media only screen and (max-width: 716px) {
            #calendar #list .event .date .month {
              margin-bottom: 1em; } }
        #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; }
          @media only screen and (max-width: 716px) {
            #calendar #list .event .date .time {
              margin-bottom: 1em; } }
        @media only screen and (max-width: 716px) {
          #calendar #list .event .date {
            width: 100% !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            -o-box-sizing: border-box;
            -ms-box-sizing: border-box; } }
      #calendar #list .event .details .inner {
        position: absolute;
        top: 50%;
        transform: translate(0, -50%); }
        @media only screen and (max-width: 716px) {
          #calendar #list .event .details .inner {
            position: relative;
            top: auto;
            transform: none; } }
      #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; }
        @media only screen and (max-width: 716px) {
          #calendar #list .event .details p {
            left: 0; } }
      @media only screen and (max-width: 716px) {
        #calendar #list .event .details {
          padding: 1em !important; } }
      #calendar #list .event:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 1px solid #D7D7D7;
        border-bottom: none;
        content: ''; }
      #calendar #list .event:hover {
        background: #FAFAFA; }
  @media only screen and (max-width: 716px) {
    #calendar #grid {
      width: 100% !important;
      padding: 0 !important; } }
  #calendar #grid #events-calendar {
    position: relative;
    width: 100%;
    padding: 0;
    border-collapse: collapse; }
    @media only screen and (max-width: 716px) {
      #calendar #grid #events-calendar {
        font-size: 1.2em;
        border-spacing: 0;
        border: none; } }
    @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 screen and (max-width: 860px) {
        #calendar #grid #events-calendar th span {
          display: none; } }
      @media only screen and (max-width: 716px) {
        #calendar #grid #events-calendar th {
          display: none; } }
      @media only print {
        #calendar #grid #events-calendar th {
          color: #000; } }
    #calendar #grid #events-calendar td {
      padding: 1em;
      vertical-align: top;
      border: 1px solid #D7D7D7; }
      @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; }
        @media only screen and (max-width: 716px) {
          #calendar #grid #events-calendar td p {
            margin-bottom: 1em; } }
        #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 screen and (max-width: 716px) {
        #calendar #grid #events-calendar td a {
          font-size: 1.75em !important; } }
      @media only print {
        #calendar #grid #events-calendar td a {
          color: #000;
          text-decoration: none; } }
      @media only screen and (max-width: 716px) {
        #calendar #grid #events-calendar td {
          display: block;
          padding: 1em 0 !important;
          border: none;
          border-top: 1px solid #D7D7D7;
          background: transparent !important; }
          #calendar #grid #events-calendar td p.day {
            margin-bottom: 0;
            font-size: 1.8em;
            text-align: left; }
          #calendar #grid #events-calendar td a {
            font-size: 1.2em; }
          #calendar #grid #events-calendar td.empty {
            display: 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 {
    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 #D7D7D7; }
    #event-tickets form:last-of-type {
      border-bottom: 1px solid #D7D7D7; }
    #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 #D7D7D7;
      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, #event-tickets form .sidebar-callout p.action, .sidebar-callout #event-tickets form p.action {
      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 #D7D7D7;
  border-right: 1px solid #D7D7D7;
  border-collapse: collapse; }
  @media only screen and (max-width: 572px) {
    #sponsorship-table {
      display: none; } }
  #sponsorship-table thead tr td {
    vertical-align: top;
    border-bottom: 7px solid #D7D7D7; }
    #sponsorship-table thead tr td:first-child {
      width: 250px;
      vertical-align: bottom; }
      @media only screen and (max-width: 860px) {
        #sponsorship-table thead tr td:first-child {
          width: 175px; } }
    #sponsorship-table thead tr td.level {
      position: relative;
      text-align: center;
      border-left: 7px solid #D7D7D7;
      border-top: 1px solid #D7D7D7; }
      @media only screen and (max-width: 860px) {
        #sponsorship-table thead tr td.level {
          width: 100px; } }
      #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 #D7D7D7; }
        #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; }
    @media only screen and (max-width: 860px) {
      #sponsorship-table thead .title {
        font-size: .8em; } }
  #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 #D7D7D7; }
    #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 #D7D7D7; }
    #sponsorship-table tbody tr td.last {
      border-right: 7px solid #D7D7D7; }

/* --- Mobile Sponsorship --- */
#sponsorship-listing {
  display: none;
  float: left;
  width: 100%;
  margin: 2.692em 0 1.538em 0; }
  @media only screen and (max-width: 572px) {
    #sponsorship-listing {
      display: block; } }
  #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 #D7D7D7;
      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 #D7D7D7;
      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 #D7D7D7;
      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 #D7D7D7; }
  #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 {
    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: #097054;
      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 #D7D7D7;
        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 #D7D7D7; }
  #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 #D7D7D7; }
    #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 #D7D7D7; }

#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: #333;
  line-height: 1.2;
  font-weight: bold;
  border-bottom: 1px solid #D7D7D7; }
  @media only screen and (max-width: 716px) {
    #cart .headers {
      position: absolute;
      top: -9999px;
      left: -9999px; } }

#cart .item {
  position: relative;
  padding: 1em 0;
  min-height: 3em;
  font-size: 1.1em;
  border-bottom: 1px solid #D7D7D7; }
  #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 #D7D7D7; }
  @media only screen and (min-width: 1148px) {
    #cart .item .span7 .inner {
      width: 319px; } }
  @media only screen and (max-width: 1148px) {
    #cart .item .span7 .inner {
      width: 277px; } }
  @media only screen and (max-width: 1004px) {
    #cart .item .span7 .inner {
      width: 235px; } }
  @media only screen and (max-width: 860px) {
    #cart .item .span7 .inner {
      width: 193px; } }
  @media only screen and (max-width: 716px) {
    #cart .item .span7 .inner {
      width: 151px; } }
  @media only screen and (min-width: 1148px) {
    #cart .item .span4.offset1 .inner {
      width: 178px; } }
  @media only screen and (max-width: 1148px) {
    #cart .item .span4.offset1 .inner {
      width: 154px; } }
  @media only screen and (max-width: 1004px) {
    #cart .item .span4.offset1 .inner {
      width: 130px; } }
  @media only screen and (max-width: 860px) {
    #cart .item .span4.offset1 .inner {
      width: 106px; } }
  @media only screen and (max-width: 716px) {
    #cart .item .span4.offset1 .inner {
      width: 82px; } }
  #cart .item .inner, #cart .item .remove {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%); }
    @media only screen and (max-width: 716px) {
      #cart .item .inner, #cart .item .remove {
        position: relative;
        top: auto;
        transform: none; } }
  #cart .item .sub-title {
    font-size: .9em; }
  #cart .item .remove {
    right: 0;
    font-size: 13px;
    text-decoration: none;
    color: #222; }
  #cart .item.no-border {
    border-bottom: none; }
  @media only screen and (max-width: 860px) {
    #cart .item input, #cart .item select {
      width: 65px; } }
  @media only screen and (max-width: 716px) {
    #cart .item input {
      width: 100px !important; }
    #cart .item .image {
      display: none; }
    #cart .item .description {
      margin-bottom: .5em;
      font-size: 1.1em; }
    #cart .item.subtotals .description, #cart .item.totals .description {
      display: none; }
    #cart .item .quantity, #cart .item .total {
      position: relative;
      width: 50% !important;
      line-height: 2.5; }
    #cart .item .remove {
      position: absolute;
      top: 0; } }

#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: #222;
      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: #333;
    line-height: 1.2;
    font-weight: normal;
    border-bottom: 1px solid #D7D7D7; }
  #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; }
      @media only screen and (max-width: 1004px) {
        #cart #cart-actions #cart-coupon input {
          width: 125px; } }
    #cart #cart-actions #cart-coupon .button, #cart #cart-actions #cart-coupon .cart-button, #cart #cart-actions #cart-coupon .sidebar-callout p.action, .sidebar-callout #cart #cart-actions #cart-coupon p.action {
      float: right;
      display: inline-block;
      padding: 10px 12px; }
      @media only screen and (max-width: 860px) {
        #cart #cart-actions #cart-coupon .button, #cart #cart-actions #cart-coupon .cart-button, #cart #cart-actions #cart-coupon .sidebar-callout p.action, .sidebar-callout #cart #cart-actions #cart-coupon p.action {
          float: none; } }
      @media only screen and (max-width: 716px) {
        #cart #cart-actions #cart-coupon .button, #cart #cart-actions #cart-coupon .cart-button, #cart #cart-actions #cart-coupon .sidebar-callout p.action, .sidebar-callout #cart #cart-actions #cart-coupon p.action {
          float: none; } }
  @media only screen and (max-width: 860px) {
    #cart #cart-actions {
      width: 100%;
      margin: 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 #cart-actions .total .span3, #cart #cart-actions .total .span2 {
        width: 50%;
        margin: 0; }
      #cart #cart-actions .total .span3 {
        padding-left: 10px;
        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: 716px) {
    #cart #cart-actions {
      padding: 3em !important; }
      #cart #cart-actions .amount {
        text-align: left; }
      #cart #cart-actions .total .span3 {
        padding-left: 0;
        font-weight: bold; }
      #cart #cart-actions #coupon-code {
        width: 50% !important;
        margin-right: .5em !important; } }

@media only screen and (max-width: 860px) {
  #cart .span16 {
    width: 100%;
    margin: 0; }
    #cart .span16 .headers .description, #cart .span16 .description.span7 {
      width: 400px; }
    #cart .span16 .description.span7 {
      width: 400px; }
      #cart .span16 .description.span7 .span7, #cart .span16 .description.span7 .inner {
        width: 400px; }
    #cart .span16 .description.span9 {
      width: 430px; }
      #cart .span16 .description.span9 .span9 {
        width: 430px; }
  #cart #coupon-code {
    width: 250px; } }

.cart-button {
  display: inline-block; }
  @media only screen and (max-width: 716px) {
    .cart-button {
      width: 100%;
      margin-bottom: 3px;
      padding-left: 0 !important;
      padding-right: 0 !important;
      text-align: center; } }

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

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

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

@media only screen and (max-width: 572px) {
  #checkout .span24 {
    margin-bottom: 1em !important; }
  #checkout .actions [class*="span"] {
    width: 50% !important;
    border-left: 1px solid #FFF !important; } }

/* --- Products --- */
#products-list .product {
  margin-bottom: 2em;
  text-align: center;
  line-height: 1.3;
  color: #222;
  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 #097054; }
    @media only screen and (max-width: 572px) {
      #product-detail .thumbs img {
        width: 15% !important;
        margin-right: 5px !important; } }

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

#product-detail .button, #product-detail .cart-button, #product-detail .sidebar-callout p.action, .sidebar-callout #product-detail p.action {
  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 #D7D7D7;
  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 #D7D7D7;
        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 #D7D7D7;
  clear: both; }

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

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

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

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

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

.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 .slider.count16 {
      width: 1600%; }
      .lucy-slideshow .slider.count16 .slide {
        width: 6.25%; }
    .lucy-slideshow .slider.count17 {
      width: 1700%; }
      .lucy-slideshow .slider.count17 .slide {
        width: 5.88235%; }
    .lucy-slideshow .slider.count18 {
      width: 1800%; }
      .lucy-slideshow .slider.count18 .slide {
        width: 5.55556%; }
    .lucy-slideshow .slider.count19 {
      width: 1900%; }
      .lucy-slideshow .slider.count19 .slide {
        width: 5.26316%; }
    .lucy-slideshow .slider.count20 {
      width: 2000%; }
      .lucy-slideshow .slider.count20 .slide {
        width: 5%; }
    .lucy-slideshow .slider.count21 {
      width: 2100%; }
      .lucy-slideshow .slider.count21 .slide {
        width: 4.7619%; }
    .lucy-slideshow .slider.count22 {
      width: 2200%; }
      .lucy-slideshow .slider.count22 .slide {
        width: 4.54545%; }
    .lucy-slideshow .slider.count23 {
      width: 2300%; }
      .lucy-slideshow .slider.count23 .slide {
        width: 4.34783%; }
    .lucy-slideshow .slider.count24 {
      width: 2400%; }
      .lucy-slideshow .slider.count24 .slide {
        width: 4.16667%; }
    .lucy-slideshow .slider.count25 {
      width: 2500%; }
      .lucy-slideshow .slider.count25 .slide {
        width: 4%; }
    .lucy-slideshow .slider.count26 {
      width: 2600%; }
      .lucy-slideshow .slider.count26 .slide {
        width: 3.84615%; }
    .lucy-slideshow .slider.count27 {
      width: 2700%; }
      .lucy-slideshow .slider.count27 .slide {
        width: 3.7037%; }
    .lucy-slideshow .slider.count28 {
      width: 2800%; }
      .lucy-slideshow .slider.count28 .slide {
        width: 3.57143%; }
    .lucy-slideshow .slider.count29 {
      width: 2900%; }
      .lucy-slideshow .slider.count29 .slide {
        width: 3.44828%; }
    .lucy-slideshow .slider.count30 {
      width: 3000%; }
      .lucy-slideshow .slider.count30 .slide {
        width: 3.33333%; }
  .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.position16 .slider {
    left: -1500%; }
  .lucy-slideshow.position17 .slider {
    left: -1600%; }
  .lucy-slideshow.position18 .slider {
    left: -1700%; }
  .lucy-slideshow.position19 .slider {
    left: -1800%; }
  .lucy-slideshow.position20 .slider {
    left: -1900%; }
  .lucy-slideshow.position21 .slider {
    left: -2000%; }
  .lucy-slideshow.position22 .slider {
    left: -2100%; }
  .lucy-slideshow.position23 .slider {
    left: -2200%; }
  .lucy-slideshow.position24 .slider {
    left: -2300%; }
  .lucy-slideshow.position25 .slider {
    left: -2400%; }
  .lucy-slideshow.position26 .slider {
    left: -2500%; }
  .lucy-slideshow.position27 .slider {
    left: -2600%; }
  .lucy-slideshow.position28 .slider {
    left: -2700%; }
  .lucy-slideshow.position29 .slider {
    left: -2800%; }
  .lucy-slideshow.position30 .slider {
    left: -2900%; }
  .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 #097054;
          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: #097054;
    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: #075842; }
  .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; }

* {
  margin: 0;
  padding: 0;
  border: 0; }

/* --- Body Styles --- */
.lucy-wrapper {
  margin: 0 auto;
  /* --- Form Styles --- */ }
  .lucy-wrapper h1 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    margin-bottom: .5em;
    font-family: "Roboto Slab", serif;
    font-weight: 300;
    font-size: 3em;
    line-height: 1; }
    .lucy-wrapper h1 a {
      text-decoration: none; }
      .lucy-wrapper h1 a:hover {
        text-decoration: underline; }
  .lucy-wrapper h2 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    font-family: "Roboto Slab", serif;
    font-size: 1.75em; }
    .lucy-wrapper h2 a {
      text-decoration: none; }
      .lucy-wrapper h2 a:hover {
        text-decoration: underline; }
  .lucy-wrapper h3 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    font-size: 1.25em; }
    .lucy-wrapper h3 a {
      text-decoration: none; }
      .lucy-wrapper h3 a:hover {
        text-decoration: underline; }
  .lucy-wrapper h4 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    font-size: 1.125em; }
    .lucy-wrapper h4 a {
      text-decoration: none; }
      .lucy-wrapper h4 a:hover {
        text-decoration: underline; }
  .lucy-wrapper h5 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    font-size: 1em; }
    .lucy-wrapper h5 a {
      text-decoration: none; }
      .lucy-wrapper h5 a:hover {
        text-decoration: underline; }
  .lucy-wrapper h6 {
    margin-bottom: 1em;
    font-family: "Roboto", sans-serif;
    color: #333;
    line-height: 1.2;
    color: #097054;
    font-weight: normal;
    font-size: .9em; }
    .lucy-wrapper h6 a {
      text-decoration: none; }
      .lucy-wrapper h6 a:hover {
        text-decoration: underline; }
  .lucy-wrapper p {
    margin-bottom: 2em;
    font-weight: 300;
    letter-spacing: .3px; }
    .lucy-wrapper p.photo-caption {
      margin-top: -.5em;
      font-size: .8em;
      font-style: italic;
      color: #999; }
  .lucy-wrapper ul {
    margin-bottom: 2em;
    padding-left: 2em; }
  .lucy-wrapper hr {
    margin: 2em 0;
    border-bottom: 1px solid #D7D7D7; }
  .lucy-wrapper .intro {
    margin-bottom: 1.5em;
    font-size: 1.4em;
    line-height: 1.4;
    font-weight: 300;
    color: #097054;
    font-family: "Roboto Slab", serif; }
  .lucy-wrapper img {
    max-width: 100%; }
  .lucy-wrapper .page-image {
    margin-bottom: 2em; }
  .lucy-wrapper blockquote {
    margin-bottom: 2em;
    font-size: 1.5em;
    line-height: 1.5;
    font-style: italic; }
  .lucy-wrapper .date-group, .lucy-wrapper .check-group {
    margin-bottom: 1em; }
  .lucy-wrapper input, .lucy-wrapper select, .lucy-wrapper textarea {
    display: inline-block;
    margin-bottom: 1em;
    padding: .5em;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
    line-height: 1.4;
    vertical-align: middle;
    background: #FFF;
    border: 1px solid #a4a4a4;
    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-wrapper select {
    padding: 0;
    height: 2.5em; }
  .lucy-wrapper label {
    display: block;
    font-weight: 200;
    margin-bottom: .4em; }
  .lucy-wrapper input[type="checkbox"], .lucy-wrapper input[type="radio"] {
    position: relative;
    top: 5px; }
    .lucy-wrapper input[type="checkbox"]:first-child, .lucy-wrapper input[type="radio"]:first-child {
      margin-left: 0; }
  .lucy-wrapper input[type="file"] {
    padding: 0 !important;
    border: none; }

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

/* --- Overlay --- */
#overlay {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #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%; }
  @media only screen and (min-width: 1148px) {
    #overlay-content {
      width: 1118px; } }
  @media only screen and (max-width: 1148px) {
    #overlay-content {
      width: 974px; } }
  @media only screen and (max-width: 1004px) {
    #overlay-content {
      width: 830px; } }
  @media only screen and (max-width: 860px) {
    #overlay-content {
      width: 686px; } }
  @media only screen and (max-width: 716px) {
    #overlay-content {
      width: 542px; } }

/* --- 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 #D7D7D7; }
    .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 {
  float: left;
  width: 100%;
  padding: 2em 0;
  text-align: center; }

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

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

/* --- Buttons and Links --- */
a, a:active, a:visited {
  color: #097054;
  text-decoration: underline; }
  a:hover, a:active:hover, a:visited:hover {
    text-decoration: none; }

button, .button, .cart-button, .sidebar-callout p.action {
  display: inline-block;
  height: auto !important;
  padding: 0.6875rem 1.25rem;
  font-size: 0.875rem !important;
  letter-spacing: 0.113125rem;
  line-height: 1 !important;
  color: #097054 !important;
  background-color: #FFF !important;
  text-decoration: none !important;
  font-family: "Roboto Condensed", sans-serif;
  font-style: normal !important;
  font-weight: 700 !important;
  font-optical-sizing: auto;
  text-transform: uppercase;
  cursor: pointer;
  border: 2px solid #FFD772;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  button > *, .button > *, .cart-button > *, .sidebar-callout p.action > * {
    flex-shrink: 0; }
  button:hover, .button:hover, .cart-button:hover, .sidebar-callout p.action:hover {
    height: auto !important;
    transform: translate(-2px, -2px);
    perspective: 1000px;
    -moz-transform: translate(-2px, -2px);
    -moz-perspective: 1000;
    -webkit-transform: translate(-2px, -2px);
    -webkit-perspective: 1000;
    -o-transform: translate(-2px, -2px);
    -o-perspective: 1000;
    -ms-transform: translate(-2px, -2px);
    -ms-perspective: 1000;
    transform: scale(1.06);
    perspective: 1000px;
    -moz-transform: scale(1.06);
    -moz-perspective: 1000;
    -webkit-transform: scale(1.06);
    -webkit-perspective: 1000;
    -o-transform: scale(1.06);
    -o-perspective: 1000;
    -ms-transform: scale(1.06);
    -ms-perspective: 1000; }
  @media only screen and (max-width: 860px) {
    button span, .button span, .cart-button span, .sidebar-callout p.action span {
      display: none; } }
  button.button-transparent, .button.button-transparent, .button-transparent.cart-button, .sidebar-callout p.button-transparent.action {
    color: #FFF !important;
    background-color: transparent !important; }
  button.button-yellow, .button.button-yellow, .button-yellow.cart-button, .sidebar-callout p.button-yellow.action {
    border-color: #FFD772;
    background-color: #FFD772 !important;
    color: #174D35 !important; }
  button.button-arrow, .button.button-arrow, .button-arrow.cart-button, .sidebar-callout p.button-arrow.action {
    display: inline-flex;
    gap: 10px;
    justify-content: center;
    align-items: center; }
    button.button-arrow::after, .button.button-arrow::after, .button-arrow.cart-button::after, .sidebar-callout p.button-arrow.action::after {
      content: url(/images/icons/right-arrow-stem.svg);
      display: inline-block;
      width: 18px;
      height: 15px;
      filter: invert(1); }

/* --- 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: #222;
  text-transform: none;
  border: 1px solid #D7D7D7;
  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 #D7D7D7; }
    .lucy-dropdown ul li {
      padding: 0 10px;
      color: #000;
      text-transform: none !important; }
      .lucy-dropdown ul li.selected {
        color: #FFF !important;
        background: #000 !important;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
      .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 #222;
    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 {
    height: 60px;
    background: #FFF;
    border-bottom: 1px solid #D7D7D7; }
    #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 #D7D7D7;
      border-right: 1px solid #D7D7D7; }
      @media only screen and (max-width: 716px) {
        #viewer #viewer-header p {
          display: none; } }
    #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; }
    @media only screen and (max-width: 860px) {
      #viewer #viewer-image {
        border: 0; } }

/* --- Page Builder Settings --- */
:where(.lucy-bucket)[data-border="1"] {
  margin-bottom: 3rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #D7D7D7; }

:where(.lucy-bucket)[data-height='25'] {
  height: calc(25vh - 8em); }
  @media only screen and (max-width: 572px) {
    :where(.lucy-bucket)[data-height='25'] {
      height: calc(15vh - 8em); } }

:where(.lucy-bucket)[data-height='50'] {
  height: calc(50vh - 8em); }
  @media only screen and (max-width: 572px) {
    :where(.lucy-bucket)[data-height='50'] {
      height: calc(40vh - 8em); } }

:where(.lucy-bucket)[data-height='75'] {
  height: calc(75vh - 8em); }
  @media only screen and (max-width: 572px) {
    :where(.lucy-bucket)[data-height='75'] {
      height: calc(65vh - 8em); } }

:where(.lucy-bucket)[data-height='100'] {
  height: calc(100vh - 8em); }

:where(.lucy-bucket).has-image {
  padding-block: 4em;
  margin-bottom: 2rem;
  background-size: cover;
  background-position: center;
  box-sizing: border-box; }

/* --- Password Field Styles --- */
.password-field-wrapper {
  position: relative; }

.password-input {
  padding-right: 40px; }

.password-toggle {
  position: absolute;
  right: 15px;
  top: 12px;
  border: none !important;
  background: none !important;
  cursor: pointer;
  font-size: 14px;
  color: #222;
  text-decoration: underline;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important; }
  .password-toggle:hover {
    color: #097054;
    background: none !important; }

/* --- Login Form Styles --- */
#private-docs #documents-form .button, #private-docs #documents-form .cart-button, #private-docs #documents-form .sidebar-callout p.action, .sidebar-callout #private-docs #documents-form p.action {
  float: none !important;
  text-align: left !important;
  justify-content: flex-start !important;
  display: inline-block !important; }

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

a img {
  border: none; }

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

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

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

/* --- Local Site Templates + Overrides --- */
#page-full, #page-left, aside, #event-left, #news-entries, #documents-left, #page-content {
  padding-top: 5rem;
  padding-bottom: 4rem; }
  #page-full.content-under, #page-left.content-under, aside.content-under, #event-left.content-under, #news-entries.content-under, #documents-left.content-under, #page-content.content-under {
    padding-bottom: 0; }
  #page-full.content-over, #page-left.content-over, aside.content-over, #event-left.content-over, #news-entries.content-over, #documents-left.content-over, #page-content.content-over {
    padding-top: 0; }
  @media only screen and (max-width: 860px) {
    #page-full, #page-left, aside, #event-left, #news-entries, #documents-left, #page-content {
      padding-top: 2.5em;
      padding-bottom: 2em; } }

#board #page-content {
  padding-bottom: 0; }

.lucy-wrapper .right-7030 {
  font-size: .9em; }

@media only screen and (max-width: 716px) {
  aside {
    padding-top: 0; } }

@media only screen and (max-width: 860px) {
  #news-right {
    padding-top: 2.5em;
    padding-bottom: 0; }
    #news-right #news-filters {
      margin-bottom: 0; } }

/* --- Sidebar --- */
.lucy-wrapper aside, .lucy-wrapper .page-right {
  font-size: .9em; }
  .lucy-wrapper aside h2, .lucy-wrapper .page-right h2 {
    font-weight: 300;
    font-size: 1.3em;
    color: #097054; }

/* --- Donate --- */
div.kimbiaDiv {
  margin: 0 !important; }

div.kimbiaDiv div.kimbiaInnerDiv label.formDefLabel {
  display: none !important; }

div.kimbiaDiv label.groupLabel.section {
  margin-top: 0 !important; }

div.kimbiaDiv select.k_select {
  height: 2.8em !important; }

label.k_oneTime {
  width: 640px !important; }

label.k_paymentPlanTitle {
  font-size: 1.1em !important; }

select.k_payPlan {
  margin-right: 10px; }

div.kimbiaDiv input.k_radioCB {
  top: 0 !important;
  display: inline-block !important;
  margin-right: 5px !important;
  vertical-align: top !important; }

div.kimbiaDiv div.inputGroup.k_rbGroup label.k_radioCB, div.kimbiaDiv div.inputGroup label.k_radioCB {
  display: inline-block !important;
  margin: 0 15px 0 0 !important;
  font-size: 1.1em !important; }

div.kimbiaDiv div.k_rbGroup input.k_money.k_otherMoney, div.kimbiaDiv div.k_rbGroup input.k_otherText {
  widtH: 350px !important;
  max-width: none !important;
  margin-left: 0 !important;
  border: 1px solid #D7D7D7 !important; }

div.kimbiaDiv label.k_required {
  font-weight: normal !important; }

div.kimbiaDiv label.groupLabel.section {
  width: 100% !important;
  margin-bottom: 1em !important;
  color: #097054 !important;
  font-family: "Roboto Slab", serif !important;
  font-size: 1.5em !important; }

.k_sectionProfile label, .k_sectionPayment label {
  width: 20% !important;
  max-width: none !important; }

.k_sectionProfile input, .k_sectionProfile select, .k_sectionPayment input, .k_sectionPayment select {
  width: 80% !important;
  max-width: none !important;
  border: 1px solid #D7D7D7 !important; }

.k_sectionProfile select, .k_sectionPayment select {
  padding: 5px !important; }

.k_sectionPayment {
  padding-top: 2em; }

label.k_radioCB.k_installment {
  width: 92% !important; }
  @media only screen and (max-width: 1004px) {
    label.k_radioCB.k_installment {
      width: 93% !important; } }
  @media only screen and (max-width: 860px) {
    label.k_radioCB.k_installment {
      width: 90% !important; } }
  @media only screen and (max-width: 572px) {
    label.k_radioCB.k_installment {
      width: 89% !important; } }

@media only screen and (max-width: 572px) {
  label.k_radioCB.k_ongoing {
    width: 89% !important; } }

@media only screen and (max-width: 1148px) {
  label.k_radioCB.k_oneTime {
    width: 91% !important; } }

@media only screen and (max-width: 1004px) {
  label.k_radioCB.k_oneTime {
    width: 90% !important; } }

@media only screen and (max-width: 860px) {
  label.k_radioCB.k_oneTime {
    width: 90% !important; } }

@media only screen and (max-width: 572px) {
  label.k_radioCB.k_oneTime {
    width: 89% !important; } }

/* --- Calendar --- */
#calendar {
  position: relative;
  z-index: 2; }
  #calendar #list {
    border: none; }
    #calendar #list h2 {
      margin: 2em 0 .5em 0; }
      #calendar #list h2:first-child {
        margin-top: 0; }
    #calendar #list .event {
      margin-bottom: 2px;
      background: #F5F5F5; }
      #calendar #list .event .date {
        background: #075842; }
        @media only screen and (max-width: 1148px) {
          #calendar #list .event .date {
            min-height: 212px; } }
        @media only screen and (max-width: 716px) {
          #calendar #list .event .date {
            min-height: inherit; } }
        #calendar #list .event .date .day {
          font-family: "Roboto Slab", serif;
          font-weight: 800; }
        #calendar #list .event .date .month {
          margin-bottom: 5.5em;
          background: #FFD772; }
          @media only screen and (max-width: 716px) {
            #calendar #list .event .date .month {
              margin-bottom: 2em; } }
        #calendar #list .event .date .time {
          margin-bottom: 5em;
          font-size: .8em; }
          @media only screen and (max-width: 716px) {
            #calendar #list .event .date .time {
              margin-bottom: 2em; } }
      #calendar #list .event:after {
        display: none; }
      @media only screen and (max-width: 716px) {
        #calendar #list .event .details {
          padding: 2em !important; } }
      #calendar #list .event .details .inner {
        position: relative;
        top: auto;
        left: auto;
        padding-top: 2em;
        padding-bottom: 2em;
        transform: none; }
        @media only screen and (max-width: 716px) {
          #calendar #list .event .details .inner {
            padding: 0; } }
        #calendar #list .event .details .inner .title {
          font-size: 1.2em;
          color: #097054; }
      #calendar #list .event:hover {
        box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
        -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
        -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
        -o-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
        -ms-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15); }

/* --- Event Detail --- */
@media only screen and (max-width: 716px) {
  #event-header {
    padding-top: 8em; } }

#event-header h1 {
  font-weight: 300; }
  @media only screen and (max-width: 1004px) {
    #event-header h1 {
      font-size: 2.5em; } }
  @media only screen and (max-width: 572px) {
    #event-header h1 {
      font-size: 2em; } }

#event-nav {
  padding: 0 !important;
  background: #F0EDEA; }
  #event-nav ul {
    padding-top: 5px; }
    #event-nav ul a {
      position: relative;
      padding-right: .5em;
      font-size: .8em;
      color: #097054 !important;
      border-bottom: 4px solid transparent;
      line-height: 3.5;
      text-decoration: none !important;
      text-transform: capitalize; }
      #event-nav ul a:hover {
        color: #FFD772 !important; }
      #event-nav ul a.selected {
        border-bottom: 4px solid #FFD772; }
      #event-nav ul a:after {
        position: absolute;
        top: 1.45em;
        right: -.7em;
        width: 3px;
        height: 3px;
        background: #097054;
        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; }
    #event-nav ul a:last-child:after {
      display: none; }

.date-location .span15 img {
  width: 100%; }

#event-gallery, #event-register {
  margin-bottom: 3em; }

#event-left h1 {
  margin-bottom: .3em; }

#sponsor-grid {
  overflow: hidden;
  float: none; }
  #sponsor-grid .sponsor {
    margin-bottom: 1em;
    line-height: 1.5;
    text-align: center; }

/* --- Search --- */
#search-page {
  padding: 4rem 0; }
  @media only screen and (max-width: 716px) {
    #search-page {
      padding: 2rem 0; } }

#search-results .sub-header, #search-results .home-landing h1 span, .home-landing h1 #search-results span {
  margin-bottom: 1rem; }

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

/* --- Pagination Styles --- */
@layer lucy-utilities {
  #lucy-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    width: 100%;
    margin-top: 2rem !important; }
    #lucy-pagination .page-controls {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 1rem;
      font-size: .889rem; }
    #lucy-pagination .arrow {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 2rem;
      height: 2rem;
      background-color: #FFD772;
      border-radius: 50%; }
      #lucy-pagination .arrow.disabled {
        cursor: not-allowed;
        opacity: .5; }
    #lucy-pagination .pages {
      display: flex;
      gap: .5rem; }
      #lucy-pagination .pages a:any-link {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 2.5rem;
        height: 2.5rem;
        font-size: .889rem;
        font-weight: 700;
        color: #000;
        text-decoration: none;
        background-color: #FFD772;
        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: #FFD772; }
    #lucy-pagination #page-selection {
      margin-bottom: 0 !important;
      min-width: 4rem;
      font-size: .889rem; } }

/* --- 70/30 Gallery Grid Page --- */
#special-gallery .lucy-slideshow {
  height: auto;
  background: #FFF;
  padding-bottom: 0; }
  #special-gallery .lucy-slideshow .slider {
    overflow: hidden;
    position: relative;
    top: auto;
    left: auto;
    width: 100%; }
    #special-gallery .lucy-slideshow .slider .slide {
      overflow: hidden;
      width: 225px;
      height: 225px;
      margin-left: 10px;
      margin-bottom: 10px;
      text-align: center; }
      #special-gallery .lucy-slideshow .slider .slide:nth-child(3n+1) {
        margin-left: 0; }
      #special-gallery .lucy-slideshow .slider .slide img {
        width: auto;
        max-width: inherit;
        max-height: 100%;
        margin-left: -8px; }
  #special-gallery .lucy-slideshow .previous, #special-gallery .lucy-slideshow .next {
    display: none; }

/* --- Private Docs --- */
#private-docs .intro {
  float: left; }

#private-docs .button, #private-docs .cart-button, #private-docs .sidebar-callout p.action, .sidebar-callout #private-docs p.action {
  float: right; }

#private-docs hr {
  clear: both; }

/* --- Stories --- */
.story-list {
  margin: 3em 0; }
  .story-list h2 {
    font-size: 1.25em;
    color: #097054;
    font-family: "Roboto Slab", serif;
    font-weight: 100; }
    .story-list h2 a {
      display: inline-block;
      margin-left: 1em;
      padding-left: 1.4em;
      padding-top: .5em;
      text-transform: uppercase;
      letter-spacing: .09em;
      color: #FFD772;
      font-size: .6em;
      font-family: "Roboto", sans-serif;
      font-weight: 500;
      text-decoration: none;
      border-left: 1px solid #D7D7D7; }
  .story-list .story {
    position: relative;
    height: 0;
    margin-bottom: 1px;
    padding-bottom: 25%; }
    @media only screen and (max-width: 716px) {
      .story-list .story {
        width: 180px;
        margin-left: 0; } }
    @media only screen and (max-width: 572px) {
      .story-list .story {
        display: block;
        height: auto;
        padding: 3em;
        background: #097054; }
        .story-list .story:hover {
          background: #075842; } }
    .story-list .story .image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      padding-left: 6px;
      background-size: 100% 100%;
      background-position: center;
      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: 716px) {
        .story-list .story .image {
          width: 95%; } }
      @media only screen and (max-width: 572px) {
        .story-list .story .image {
          position: static; } }
      .story-list .story .image:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: transparent url(../images/story-grid-shadow.png) no-repeat bottom left;
        background-size: cover;
        content: ''; }
        @media only screen and (max-width: 572px) {
          .story-list .story .image:before {
            display: none; } }
    .story-list .story .inner {
      position: absolute;
      bottom: 3em;
      left: 0;
      width: 100%;
      color: #FFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      @media only screen and (max-width: 860px) {
        .story-list .story .inner {
          bottom: 1em; }
          .story-list .story .inner .span6 {
            width: 130px; } }
      @media only screen and (max-width: 572px) {
        .story-list .story .inner {
          padding: 0 1em;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; } }
      .story-list .story .inner p {
        margin-bottom: 0;
        line-height: 1.3;
        font-size: 1.1em;
        font-family: "Roboto Slab", serif;
        font-weight: 300; }
        @media only screen and (max-width: 860px) {
          .story-list .story .inner p {
            font-size: 1em; } }
        @media only screen and (max-width: 716px) {
          .story-list .story .inner p {
            font-size: .8em; } }
        .story-list .story .inner p.subtitle {
          margin-top: .25em;
          font-weight: 100;
          font-size: .85em; }
      .story-list .story .inner .right-arrow {
        margin-top: 1em; }
        @media only screen and (max-width: 716px) {
          .story-list .story .inner .right-arrow {
            margin-top: 0; } }
    .story-list .story:nth-child(3n + 2) .image {
      left: -3px; }
    .story-list .story:nth-child(3n + 3) .image {
      left: -6px; }
    .story-list .story:hover .image {
      background-size: 105% 105%; }
    .story-list .story:hover .right-arrow {
      width: 40px; }

#board-list h2 {
  margin: 0;
  margin-top: 4rem;
  margin-bottom: 2rem;
  padding: 0;
  padding-bottom: 1rem;
  border: none;
  border-bottom: 1px solid #D7D7D7; }
  #board-list h2:first-of-type {
    margin-top: 0; }

#board-list .member {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  margin-bottom: 2rem;
  padding: 0;
  padding-bottom: 2rem;
  border: none;
  border-bottom: 1px solid #D7D7D7; }
  @media only screen and (max-width: 860px) {
    #board-list .member {
      flex-direction: column;
      gap: 1rem; } }
  #board-list .member img {
    display: block;
    width: 150px; }
  #board-list .member .content {
    display: flex;
    flex-direction: column;
    gap: 0; }
    #board-list .member .content > * {
      margin-bottom: 0; }
    #board-list .member .content p strong.title {
      font-family: "Roboto Slab", serif;
      font-size: 1.25rem;
      color: #097054; }
    #board-list .member .content .bio {
      margin-top: .5rem; }
      #board-list .member .content .bio :last-child {
        margin-bottom: 0; }

#staff-list h2 {
  margin: 2em 0 0 0;
  padding-bottom: 1em;
  border-bottom: 1px solid #D7D7D7; }
  #staff-list h2:first-of-type {
    margin-top: 0; }

#staff-list .member {
  padding: 2em 0 !important; }
  #staff-list .member .span11 .inner h3 {
    margin-left: 10px; }

#faqs {
  padding-top: 5em;
  padding-bottom: 4em; }
  #faqs .faq h2 {
    font-size: 1.1em; }

@media only screen and (max-width: 860px) {
  #special-event #sponsorship-table {
    display: none !important; } }

#special-event #sponsorship-listing {
  float: none;
  overflow: hidden; }
  @media only screen and (max-width: 860px) {
    #special-event #sponsorship-listing {
      display: block !important; } }

@media only screen and (max-width: 860px) {
  #special-event .span6, #special-event .span17 {
    width: 100%;
    margin-left: 0; } }

#special-event .date-location .headline {
  font-size: 1.5em;
  font-family: "Roboto Slab", serif;
  color: #097054; }

#special-event #overview-thirds {
  margin-bottom: 2.5em; }

#matching-gifts iframe {
  margin-left: -8px; }

#policies .policy {
  padding-top: 2em;
  margin-top: 2em;
  border-top: 1px solid #D7D7D7; }
  #policies .policy h2 {
    margin-bottom: .8em; }

/* --- Custom Event Registration Styles --- */
form#form_kimbia_1 .kimbiaInnerDiv .k_page .k_column .k_questionBlock .inputGroup.invalid {
  background: none; }

form#form_kimbia_1 .kimbiaInnerDiv #kimbiaView_1_NumberofGuests label.k_required {
  float: left; }

form#form_kimbia_1 .kimbiaInnerDiv #errDiv_1.invalid {
  background: none; }

form#form_kimbia_1 .kimbiaInnerDiv #errDiv_1 ul {
  padding-top: 15px;
  padding-left: 0;
  list-style: none; }
  form#form_kimbia_1 .kimbiaInnerDiv #errDiv_1 ul li {
    color: #911; }

body#front {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #222;
  letter-spacing: .01em; }
  body#front.csu {
    padding-top: 90px; }
    @media only screen and (max-width: 1004px) {
      body#front.csu {
        padding-top: 155px; } }
    @media only screen and (max-width: 716px) {
      body#front.csu {
        padding-top: 80px; } }

.lucy-wrapper {
  position: relative;
  margin: 0 auto;
  font-family: "Roboto", sans-serif; }
  @media only screen and (min-width: 1148px) {
    .lucy-wrapper {
      width: 1118px; } }
  @media only screen and (max-width: 1148px) {
    .lucy-wrapper {
      width: 974px; } }
  @media only screen and (max-width: 1004px) {
    .lucy-wrapper {
      width: 830px; } }
  @media only screen and (max-width: 860px) {
    .lucy-wrapper {
      width: 686px; } }
  @media only screen and (max-width: 716px) {
    .lucy-wrapper {
      width: 542px; } }
  @media only screen and (max-width: 572px) {
    .lucy-wrapper {
      width: 100%;
      padding: 0 2em;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; } }

#site {
  width: 100%;
  margin: 0 auto; }

header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 90px;
  padding: 15px 0;
  background: #FFF;
  box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -o-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -ms-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  @media only screen and (max-width: 1004px) {
    header {
      height: 155px; } }
  @media only screen and (max-width: 716px) {
    header {
      height: 80px; }
      header .lucy-wrapper {
        width: 100%; } }
  @media only screen and (max-width: 1148px) {
    header #logo {
      width: 200px;
      margin-top: 8px; } }
  @media only screen and (max-width: 716px) {
    header #logo {
      margin-top: 0;
      margin-left: 100px; } }
  @media only screen and (max-width: 572px) {
    header #logo {
      display: none; } }
  header #mobile-logo {
    display: none;
    margin-left: 70px; }
    @media only screen and (max-width: 572px) {
      header #mobile-logo {
        display: block; } }
  header nav {
    float: right; }
    header nav ul {
      position: relative;
      margin: 0 !important;
      padding: 0 !important;
      list-style-type: none; }
      header nav ul li {
        display: inline-block;
        margin-left: 1em; }
        @media only screen and (max-width: 716px) {
          header nav ul li {
            display: none; } }
        header nav ul li a, header nav ul li a:active, header nav ul li a:hover {
          display: block;
          height: 75px;
          line-height: 60px;
          text-decoration: none;
          outline: none;
          transition: all .2s; }
          header nav ul li a:after, header nav ul li a:active:after, header nav ul li a:hover:after {
            display: inline-block;
            width: 8px;
            margin-left: .25em;
            font-size: .75em;
            color: #B6B6B6;
            content: '+'; }
          header nav ul li a.button:after, header nav ul li a.cart-button:after, header nav ul li a:active.button:after, header nav ul li a.cart-button:active:after, header nav ul li a:hover.button:after, header nav ul li a.cart-button:hover:after {
            display: none; }
          header nav ul li a.active:after, header nav ul li a:active.active:after, header nav ul li a:hover.active:after {
            content: '-'; }
          @media only screen and (max-width: 1004px) {
            header nav ul li a, header nav ul li a:active, header nav ul li a:hover {
              font-size: 1.25em; } }
          @media only screen and (max-width: 860px) {
            header nav ul li a, header nav ul li a:active, header nav ul li a:hover {
              font-size: 1em; } }
          @media only screen and (max-width: 716px) {
            header nav ul li a span, header nav ul li a:active span, header nav ul li a:hover span {
              display: none; } }
          @media only screen and (max-width: 860px) {
            header nav ul li a, header nav ul li a:active, header nav ul li a:hover {
              height: 75px;
              line-height: 60px; } }
        header nav ul li.give-button {
          box-sizing: border-box; }
          @media only screen and (max-width: 1004px) {
            header nav ul li.give-button {
              position: absolute;
              top: 12px;
              right: 0; } }
          @media only screen and (max-width: 716px) {
            header nav ul li.give-button {
              display: block !important;
              position: absolute;
              top: -56px;
              right: 60px; } }
          @media only screen and (max-width: 572px) {
            header nav ul li.give-button {
              display: none !important; } }
        header nav ul li.icon-search {
          color: #B6B6B6;
          cursor: pointer; }
          header nav ul li.icon-search.active {
            color: #FFD772; }
          @media only screen and (max-width: 1004px) {
            header nav ul li.icon-search {
              position: absolute;
              top: -51px;
              right: 0; } }
          @media only screen and (max-width: 716px) {
            header nav ul li.icon-search {
              display: block !important;
              top: -48px;
              right: 25px; } }
          @media only screen and (max-width: 572px) {
            header nav ul li.icon-search {
              top: -42px;
              right: -15px; } }
        @media only screen and (max-width: 1148px) {
          header nav ul li {
            margin-left: .9em; } }
        @media only screen and (max-width: 1004px) {
          header nav ul li {
            margin-left: 1.7em; } }
        @media only screen and (max-width: 860px) {
          header nav ul li {
            margin-left: 1.4em; } }
        @media only screen and (max-width: 716px) {
          header nav ul li {
            margin-left: .8em; } }
    header nav #active-bar {
      position: absolute;
      bottom: 0;
      width: 0;
      height: 3px;
      background: #FFD772;
      transition: all .2s; }
      @media only screen and (max-width: 1004px) {
        header nav #active-bar {
          bottom: 8px; } }
    @media only screen and (max-width: 1004px) {
      header nav {
        width: 100%;
        margin-top: .5em;
        border-top: 1px solid #D7D7D7; }
        header nav ul {
          margin-left: -1em !important; }
        header nav .button, header nav .cart-button, header nav .sidebar-callout p.action, .sidebar-callout header nav p.action {
          padding: .9em 4em; } }
    @media only screen and (max-width: 860px) {
      header nav .button, header nav .cart-button, header nav .sidebar-callout p.action, .sidebar-callout header nav p.action {
        padding: .9em 2.5em; } }
    @media only screen and (max-width: 716px) {
      header nav {
        border: none; }
        header nav .button, header nav .cart-button, header nav .sidebar-callout p.action, .sidebar-callout header nav p.action {
          padding: .9em; } }

#mobile-menu-button {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 80px;
  height: 80px;
  z-index: 11;
  background: #097054;
  cursor: pointer; }
  #mobile-menu-button:before {
    position: absolute;
    top: 21px;
    left: 25px;
    font-family: 'icomoon';
    font-size: 25px;
    color: #FFF;
    content: '\e915'; }
  @media only screen and (max-width: 716px) {
    #mobile-menu-button {
      display: block; } }

#mobile-shelf {
  display: none;
  position: fixed;
  top: 80px;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  z-index: 11;
  background: #FFF;
  border-top: 1px solid #D7D7D7; }
  #mobile-shelf ul {
    list-style-type: none; }
    #mobile-shelf ul a {
      display: block;
      padding: 25px;
      text-decoration: none;
      border-bottom: 1px solid #D7D7D7; }
      #mobile-shelf ul a li {
        font-size: 1.5em; }
      #mobile-shelf ul a:hover {
        background-color: #EEE; }
  #mobile-shelf p {
    margin: 1em; }
    #mobile-shelf p a {
      display: block;
      text-align: center; }

#search-form {
  position: absolute;
  top: 0;
  right: 25px;
  display: none;
  width: 60%;
  height: 100%;
  background: #FFF; }
  #search-form input {
    position: relative;
    top: 5px;
    width: 100%;
    height: 50px;
    font-family: "Roboto Slab", serif;
    font-weight: 300;
    font-size: 1.25em;
    border: 1px solid #DDD; }
    @media only screen and (max-width: 716px) {
      #search-form input {
        font-size: 1em; } }
  @media only screen and (max-width: 1148px) {
    #search-form {
      width: 65%; } }
  @media only screen and (max-width: 1004px) {
    #search-form {
      width: 50%; } }
  @media only screen and (max-width: 716px) {
    #search-form {
      top: 65px;
      left: 0;
      right: auto;
      width: 100%;
      height: 95px;
      padding: 1em;
      border-top: 1px solid #D7D7D7;
      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: 0 15px 25px 0 rgba(0, 0, 0, 0.3);
      -moz-box-shadow: 0 15px 25px 0 rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0 15px 25px 0 rgba(0, 0, 0, 0.3);
      -o-box-shadow: 0 15px 25px 0 rgba(0, 0, 0, 0.3);
      -ms-box-shadow: 0 15px 25px 0 rgba(0, 0, 0, 0.3); } }

/* --- Shelf Navigation --- */
#shelf {
  position: fixed;
  z-index: 4;
  top: -350px;
  left: 0;
  width: 100%;
  background: #FFF;
  box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -o-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  -ms-box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.3);
  transition: all .25s;
  /* --- Shelf Specific Styles --- */ }
  @media only screen and (max-width: 716px) {
    #shelf {
      display: none; } }
  #shelf.open {
    top: 90px; }
    @media only screen and (max-width: 1004px) {
      #shelf.open {
        padding-top: 65px; } }
  #shelf [class*='span'] {
    position: relative;
    z-index: 1; }
  #shelf .page {
    display: none; }
  #shelf .image {
    position: relative;
    overflow: hidden; }
    #shelf .image img {
      float: left;
      width: 100%; }
    #shelf .image .content {
      position: absolute;
      z-index: 1;
      bottom: 1.5em;
      left: 0;
      width: 100%; }
      #shelf .image .content p {
        margin-bottom: 0;
        font-size: .8em;
        font-weight: 300;
        color: #FFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
    #shelf .image:after {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 249px;
      background: transparent url(../images/shelf-image-gradient.png) repeat-x bottom left;
      content: ''; }
  #shelf .links ul {
    margin: 0;
    padding: 0;
    line-height: 1.75;
    list-style-type: none;
    vertical-align: middle; }
    #shelf .links ul a, #shelf .links ul a:active, #shelf .links ul a:visited {
      text-decoration: none; }
      @media only screen and (max-width: 1004px) {
        #shelf .links ul a, #shelf .links ul a:active, #shelf .links ul a:visited {
          font-size: 15px; } }
      #shelf .links ul a:hover, #shelf .links ul a:active:hover, #shelf .links ul a:visited:hover {
        text-decoration: underline; }
  #shelf .links, #shelf .callout {
    margin-top: 2em;
    margin-bottom: 2em; }
  #shelf .callout {
    position: relative;
    left: -10px;
    margin-top: 2em;
    text-decoration: none; }
    #shelf .callout label {
      display: block;
      margin-bottom: 2em;
      letter-spacing: .15em;
      color: #097054;
      font-size: .75em;
      text-transform: uppercase; }
    #shelf .callout .title {
      margin-bottom: .4em;
      color: #097054;
      font-family: "Roboto Slab", serif;
      font-size: 1.1em;
      font-weight: 300; }
      @media only screen and (max-width: 1004px) {
        #shelf .callout .title {
          font-size: 1em; } }
    #shelf .callout .date {
      margin-bottom: .8em;
      color: #777;
      font-size: .7em; }
      #shelf .callout .date.tablet {
        display: none; }
        @media only screen and (max-width: 860px) {
          #shelf .callout .date.tablet {
            display: block; } }
    #shelf .callout .body {
      margin-bottom: 0;
      font-size: .9em;
      line-height: 1.4; }
      @media only screen and (max-width: 860px) {
        #shelf .callout .body {
          font-size: .8em; } }
    #shelf .callout .button, #shelf .callout .cart-button, #shelf .callout .sidebar-callout p.action, .sidebar-callout #shelf .callout p.action {
      width: 100%;
      margin-top: 1em;
      padding-left: 0;
      padding-right: 0;
      text-align: center; }
    #shelf .callout.support .title {
      font-size: 1.5em; }
      @media only screen and (max-width: 860px) {
        #shelf .callout.support .title {
          font-size: 1.3em; } }
  #shelf .icon-close {
    position: absolute;
    top: 2em;
    right: 0;
    color: #D7D7D7;
    cursor: pointer; }
  @media only screen and (max-width: 860px) {
    #shelf #shelf-support .callout .body, #shelf #shelf-about .callout .body, #shelf #shelf-impact .callout .body {
      display: none; } }

/* --- Page Header --- */
#page-header {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 20.5%;
  background-size: cover;
  background-position: center; }
  @media only screen and (max-width: 716px) {
    #page-header {
      padding-bottom: 30%; } }
  @media only screen and (max-width: 1148px) {
    #page-header.campaign {
      padding-bottom: 27.5%; } }
  @media only screen and (max-width: 1004px) {
    #page-header.campaign {
      padding-bottom: 30.5%; } }
  @media only screen and (max-width: 860px) {
    #page-header.campaign {
      padding-bottom: 33.5%; }
      #page-header.campaign .content {
        bottom: 3em; } }
  #page-header .content {
    position: absolute;
    z-index: 1;
    bottom: 4em;
    left: 0;
    width: 100%; }
    @media only screen and (max-width: 572px) {
      #page-header .content {
        display: none; } }
    #page-header .content h1 {
      margin-bottom: 0;
      font-size: 3em;
      color: #FFF;
      font-family: "Roboto Slab", serif;
      font-weight: 300; }
      @media only screen and (max-width: 572px) {
        #page-header .content h1 {
          color: #097054; } }
    #page-header .content .subtitle {
      margin: .25em 0 0 0;
      color: #FFF;
      font-size: 1.4em;
      font-family: "Roboto Slab", serif;
      font-weight: 300; }
  #page-header.tall {
    padding-bottom: 29%;
    background-position: center; }
    @media only screen and (max-width: 716px) {
      #page-header.tall {
        padding-bottom: 33%; }
        #page-header.tall h1 {
          font-size: 2.5em; } }
  #page-header:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/header-shadow.png) no-repeat bottom left;
    content: ''; }
    @media only screen and (max-width: 572px) {
      #page-header:before {
        display: none; } }

/* --- Page Navigation --- */
#page-nav, #back-to, #mobile-page-nav {
  letter-spacing: .09em;
  background: #075842;
  box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3);
  -o-box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3);
  -ms-box-shadow: 0 8px 15px 0 rgba(0, 0, 0, 0.3); }
  @media only screen and (max-width: 860px) {
    #page-nav, #back-to, #mobile-page-nav {
      display: none; } }
  #page-nav ul, #back-to ul, #mobile-page-nav ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    #page-nav ul li, #back-to ul li, #mobile-page-nav ul li {
      display: inline-block;
      margin-right: 1.25em;
      padding-right: 1.25em;
      font-size: .625em;
      text-transform: uppercase;
      font-weight: 800; }
      #page-nav ul li:last-child a:after, #back-to ul li:last-child a:after, #mobile-page-nav ul li:last-child a:after {
        display: none; }
    #page-nav ul a, #back-to ul a, #mobile-page-nav ul a, #page-nav ul a:active, #back-to ul a:active, #mobile-page-nav ul a:active, #page-nav ul a:visited, #back-to ul a:visited, #mobile-page-nav ul a:visited {
      position: relative;
      display: flex;
      gap: 16px;
      align-items: center;
      padding: 2em 0;
      line-height: 1;
      color: #FFF;
      text-decoration: none;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      #page-nav ul a:after, #back-to ul a:after, #mobile-page-nav ul a:after, #page-nav ul a:active:after, #back-to ul a:active:after, #mobile-page-nav ul a:active:after, #page-nav ul a:visited:after, #back-to ul a:visited:after, #mobile-page-nav ul a:visited:after {
        position: absolute;
        top: 2.2em;
        right: -1.45em;
        width: 3px;
        height: 3px;
        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; }
      #page-nav ul a.active:before, #back-to ul a.active:before, #mobile-page-nav ul a.active:before, #page-nav ul a:hover:before, #back-to ul a:hover:before, #mobile-page-nav ul a:hover:before, #page-nav ul a:active.active:before, #back-to ul a:active.active:before, #mobile-page-nav ul a:active.active:before, #page-nav ul a:active:hover:before, #back-to ul a:active:hover:before, #mobile-page-nav ul a:active:hover:before, #page-nav ul a:visited.active:before, #back-to ul a:visited.active:before, #mobile-page-nav ul a:visited.active:before, #page-nav ul a:visited:hover:before, #back-to ul a:visited:hover:before, #mobile-page-nav ul a:visited:hover:before {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 3px;
        background: #FFD772;
        content: ''; }

@media only screen and (max-width: 860px) {
  #back-to {
    display: block !important; } }

#mobile-page-nav {
  display: none;
  cursor: pointer;
  list-style-type: none; }
  @media only screen and (max-width: 860px) {
    #mobile-page-nav {
      display: block; } }
  #mobile-page-nav li.section-title {
    padding: 1.8em 0;
    font-size: .625em;
    text-transform: uppercase;
    font-weight: 800;
    color: #FFF; }
    #mobile-page-nav li.section-title:after {
      position: absolute;
      top: 22px;
      right: 0;
      font-family: 'icomoon';
      font-size: 6px;
      content: '\e927';
      color: #FFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      @media only screen and (max-width: 572px) {
        #mobile-page-nav li.section-title:after {
          right: 30px; } }
    #mobile-page-nav li.section-title.open:after {
      content: '\e925'; }
  #mobile-page-nav #interior-shelf {
    position: absolute;
    width: 100%;
    padding: 1em 0;
    z-index: 3;
    background: #FFF;
    box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.08);
    -moz-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.08);
    -webkit-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.08);
    -o-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.08);
    -ms-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.08); }
    #mobile-page-nav #interior-shelf li {
      display: block; }
      #mobile-page-nav #interior-shelf li a {
        color: #222;
        text-decoration: none; }
        #mobile-page-nav #interior-shelf li a:hover, #mobile-page-nav #interior-shelf li a.active {
          color: #097054; }

/* --- Home Page --- */
#slide-window {
  overflow: hidden;
  width: 100%;
  height: auto; }
  @media only screen and (max-width: 572px) {
    #slide-window {
      height: 550px; } }

#home-slideshow {
  margin-bottom: 0;
  padding-bottom: 43.5%; }
  @media only screen and (max-width: 716px) {
    #home-slideshow {
      height: 150px; } }
  @media only screen and (max-width: 572px) {
    #home-slideshow {
      overflow: visible;
      margin-bottom: 14em; } }
  #home-slideshow .slider {
    position: absolute;
    z-index: 0; }
  #home-slideshow .slide {
    position: relative;
    height: 100%;
    overflow: hidden; }
    @media only screen and (max-width: 572px) {
      #home-slideshow .slide {
        overflow: visible; } }
    #home-slideshow .slide img {
      position: absolute;
      z-index: 0;
      top: 0;
      left: -5%;
      width: 110%;
      height: 110%; }
    #home-slideshow .slide .content {
      position: absolute;
      z-index: 2;
      left: 0;
      bottom: 7em;
      width: 100%; }
      @media only screen and (max-width: 1004px) {
        #home-slideshow .slide .content {
          bottom: 6em; } }
      @media only screen and (max-width: 860px) {
        #home-slideshow .slide .content {
          bottom: 4em; } }
      @media only screen and (max-width: 572px) {
        #home-slideshow .slide .content {
          bottom: -10em; } }
      #home-slideshow .slide .content .caption {
        margin-bottom: 1em;
        font-family: "Roboto Slab", serif;
        font-weight: 300;
        font-size: 3em;
        font-size: 2.8vw;
        line-height: 1.3; }
        @media only screen and (max-width: 1148px) {
          #home-slideshow .slide .content .caption {
            font-size: 1.8em; } }
        @media only screen and (max-width: 1004px) {
          #home-slideshow .slide .content .caption {
            font-size: 1.5em; } }
        @media only screen and (max-width: 860px) {
          #home-slideshow .slide .content .caption {
            font-size: 1.3em; } }
        @media only screen and (max-width: 572px) {
          #home-slideshow .slide .content .caption {
            color: #097054; } }
      #home-slideshow .slide .content p {
        position: relative;
        bottom: auto;
        left: auto;
        padding: 0; }
    #home-slideshow .slide:before {
      position: absolute;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: transparent url(../images/home-slide-shadow.png) no-repeat bottom left;
      content: '';
      background-size: contain; }
  #home-slideshow .previous, #home-slideshow .next {
    z-index: 2;
    width: 70px;
    height: 70px;
    text-indent: 0;
    background: #FFF;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 716px) {
      #home-slideshow .previous, #home-slideshow .next {
        width: 50px;
        height: 50px; } }
    #home-slideshow .previous:after, #home-slideshow .next:after {
      width: 14px;
      height: 21px;
      margin: 0;
      margin-top: -10px;
      color: #097054;
      border: none;
      background-size: 100%; }
  #home-slideshow .previous {
    left: -70px; }
    #home-slideshow .previous:after {
      left: auto;
      right: 14px;
      background-image: url(../images/slide-arrow-left.png); }
      @media only screen and (max-width: 716px) {
        #home-slideshow .previous:after {
          right: 10px; } }
    @media only screen and (max-width: 860px) {
      #home-slideshow .previous {
        left: -35px; } }
    @media only screen and (max-width: 716px) {
      #home-slideshow .previous {
        left: -25px; } }
  #home-slideshow .next {
    right: -70px; }
    #home-slideshow .next:after {
      left: 14px;
      background-image: url(../images/slide-arrow-right.png); }
      @media only screen and (max-width: 716px) {
        #home-slideshow .next:after {
          left: 10px; } }
    @media only screen and (max-width: 860px) {
      #home-slideshow .next {
        right: -35px; } }
    @media only screen and (max-width: 716px) {
      #home-slideshow .next {
        right: -25px; } }
  #home-slideshow #control-dots {
    position: absolute;
    z-index: 2;
    bottom: 3em;
    width: 100%;
    padding-left: 0;
    list-style-type: none;
    text-align: center; }
    @media only screen and (max-width: 860px) {
      #home-slideshow #control-dots {
        bottom: 1.5em; } }
    #home-slideshow #control-dots .dot {
      display: inline-block;
      width: 8px;
      height: 8px;
      margin-right: 4px;
      cursor: pointer;
      border: 2px solid #FFF;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #home-slideshow #control-dots .dot.selected {
        background: #FFF; }
  #home-slideshow:hover .previous {
    left: -35px; }
    @media only screen and (max-width: 716px) {
      #home-slideshow:hover .previous {
        left: -25px; } }
  #home-slideshow:hover .next {
    right: -35px; }
    @media only screen and (max-width: 716px) {
      #home-slideshow:hover .next {
        right: -25px; } }

#home-intro {
  padding: 4em 0;
  font-size: 1.4em;
  line-height: 1.4;
  font-family: "Roboto Slab", serif;
  font-weight: 300;
  text-align: center;
  color: #097054; }
  #home-intro p {
    margin-bottom: 0;
    font-family: "Roboto Slab", serif;
    font-weight: 300; }
  @media only screen and (max-width: 1148px) {
    #home-intro {
      padding: 3em 0; } }
  @media only screen and (max-width: 572px) {
    #home-intro {
      margin-top: .5em;
      border-top: 1px solid #D7D7D7; } }

#home-stories {
  font-size: 0;
  letter-spacing: 0; }
  #home-stories .story {
    position: relative;
    display: inline-block;
    width: 50%;
    height: 0;
    color: #FFF;
    letter-spacing: .01em;
    font-family: "Roboto Slab", serif;
    font-weight: 300;
    padding-bottom: 37%;
    background-size: 100% 100%;
    background-position: center;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    #home-stories .story .inner {
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: 0;
      padding: 0 20% 12% 15%;
      line-height: 1.5;
      font-size: 16px; }
    #home-stories .story label {
      display: block;
      margin-bottom: 1.5em;
      letter-spacing: .15em;
      font-size: .9em;
      font-family: "Roboto", sans-serif;
      text-transform: uppercase; }
    #home-stories .story p {
      margin-bottom: .75em;
      font-size: 2.25em;
      font-size: 2.5vw;
      font-weight: 300; }
      @media only screen and (max-width: 1148px) {
        #home-stories .story p {
          font-size: 1.8em;
          font-size: 2.5vw; } }
      @media only screen and (max-width: 860px) {
        #home-stories .story p {
          font-size: 1.4em;
          font-size: 2.5vw; } }
    #home-stories .story:before {
      position: absolute;
      z-index: 0;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: transparent url(../images/story-shadow.png) no-repeat 0 0;
      background-size: cover;
      content: ''; }
    #home-stories .story:hover {
      background-size: 105% 105%; }
      #home-stories .story:hover .right-arrow {
        width: 40px; }
    @media only screen and (max-width: 572px) {
      #home-stories .story {
        width: 100%;
        padding-bottom: 74%; }
        #home-stories .story p {
          font-size: 1em;
          font-size: 4.5vw; } }
    #home-stories .story:last-child:after {
      position: absolute;
      top: 0;
      left: 0;
      width: 1px;
      height: 100%;
      background: #FFF;
      content: ''; }

#home-callout {
  border-top: 1px #FFF solid;
  background: #174D35; }
  #home-callout .callout {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4.464em;
    margin: 0 auto;
    padding: 5.389em 0;
    width: 100%;
    color: #FFF;
    text-decoration: none; }
    #home-callout .callout img {
      border-radius: 50%;
      max-width: 26.45em;
      aspect-ratio: 1 / 1; }
    #home-callout .callout .content {
      gap: 0; }
      #home-callout .callout .content > *:not(.button):not(.cart-button) {
        margin: 0;
        padding: 0; }
      #home-callout .callout .content .sub-header, #home-callout .callout .content .home-landing h1 span, .home-landing h1 #home-callout .callout .content span {
        margin-bottom: 1.5rem !important;
        font-family: "Roboto", sans-serif;
        font-weight: 300;
        letter-spacing: 2px;
        text-transform: uppercase; }
        #home-callout .callout .content .sub-header span, #home-callout .callout .content .home-landing h1 span span, .home-landing h1 #home-callout .callout .content span span {
          font-weight: 900; }
      #home-callout .callout .content .title {
        margin-bottom: 1.5rem !important;
        font-family: "Roboto Slab", serif;
        font-weight: 300;
        font-size: 2.5em;
        line-height: 1.5; }
      #home-callout .callout .content .body {
        font-size: 1.125em;
        line-height: calc(5 / 3);
        margin-bottom: 2.5rem !important; }
    @media (pointer: fine) {
      #home-callout .callout:hover .content .button, #home-callout .callout:hover .content .cart-button, #home-callout .callout:hover .content .sidebar-callout p.action, .sidebar-callout #home-callout .callout:hover .content p.action, #home-callout .callout:focus .content .button, #home-callout .callout:focus .content .cart-button, #home-callout .callout:focus .content .sidebar-callout p.action, .sidebar-callout #home-callout .callout:focus .content p.action {
        height: auto !important;
        background: #f2f2f2 !important;
        transform: translate(-2px, -2px);
        perspective: 1000px;
        -moz-transform: translate(-2px, -2px);
        -moz-perspective: 1000;
        -webkit-transform: translate(-2px, -2px);
        -webkit-perspective: 1000;
        -o-transform: translate(-2px, -2px);
        -o-perspective: 1000;
        -ms-transform: translate(-2px, -2px);
        -ms-perspective: 1000;
        transform: scale(1.06);
        perspective: 1000px;
        -moz-transform: scale(1.06);
        -moz-perspective: 1000;
        -webkit-transform: scale(1.06);
        -webkit-perspective: 1000;
        -o-transform: scale(1.06);
        -o-perspective: 1000;
        -ms-transform: scale(1.06);
        -ms-perspective: 1000; } }
  @media only screen and (max-width: 1004px) {
    #home-callout .callout {
      flex-direction: column-reverse;
      gap: 0; } }

#home-support {
  padding: 5em 0 4em 0;
  text-align: center; }
  #home-support h2 {
    margin-bottom: .5em;
    font-size: 1.75em;
    color: #097054;
    font-weight: 300;
    font-family: "Roboto Slab", serif; }
  #home-support .span18 p {
    margin-bottom: 2em;
    font-size: 1.4em;
    line-height: 1.4;
    font-family: "Roboto Slab", serif;
    font-weight: 300;
    color: #097054; }
  @media only screen and (max-width: 572px) {
    #home-support {
      padding-bottom: 2em; } }

#home-news-events {
  box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -o-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -ms-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15); }
  @media only screen and (max-width: 572px) {
    #home-news-events {
      box-shadow: 0 0 0 0 transparent;
      -moz-box-shadow: 0 0 0 0 transparent;
      -webkit-box-shadow: 0 0 0 0 transparent;
      -o-box-shadow: 0 0 0 0 transparent;
      -ms-box-shadow: 0 0 0 0 transparent; } }
  #home-news-events .row {
    display: table; }
  #home-news-events .span8 {
    position: relative;
    left: 10px;
    float: none;
    display: table-cell; }
    @media only screen and (max-width: 572px) {
      #home-news-events .span8 {
        float: left;
        display: inline-block; } }
  #home-news-events .news {
    padding-top: 5.5em;
    padding-bottom: 5em; }
    #home-news-events .news h2 {
      display: block;
      margin-bottom: 3.5em;
      font-size: .9em;
      font-family: "Roboto", sans-serif;
      text-transform: uppercase;
      font-weight: normal;
      color: #097054; }
    #home-news-events .news .entry {
      margin-bottom: 2.5em;
      text-decoration: none; }
      #home-news-events .news .entry p {
        font-weight: 300; }
        #home-news-events .news .entry p.title {
          margin-bottom: .25em;
          font-size: 1.5em;
          font-family: "Roboto Slab", serif;
          font-weight: 300;
          line-height: 1.25;
          color: #097054; }
        #home-news-events .news .entry p.date {
          margin-bottom: .25em;
          color: #777;
          font-size: .7em; }
      #home-news-events .news .entry:last-child {
        margin-bottom: 0; }
      #home-news-events .news .entry:hover .title {
        text-decoration: underline; }
    @media only screen and (max-width: 572px) {
      #home-news-events .news {
        padding: 3.5em 0;
        border-top: 1px solid #D7D7D7; }
        #home-news-events .news h2 {
          margin-bottom: 2em; } }
  #home-news-events .event {
    left: 20px;
    height: 100%;
    padding-bottom: 5em;
    color: #FFF;
    font-weight: 300;
    overflow: hidden;
    background-color: #000;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    #home-news-events .event .inner {
      position: absolute;
      bottom: 5em; }
      @media only screen and (min-width: 1148px) {
        #home-news-events .event .inner {
          width: 366px; } }
      @media only screen and (max-width: 1148px) {
        #home-news-events .event .inner {
          width: 318px; } }
      @media only screen and (max-width: 1004px) {
        #home-news-events .event .inner {
          width: 270px; } }
      @media only screen and (max-width: 860px) {
        #home-news-events .event .inner {
          width: 222px; } }
      @media only screen and (max-width: 716px) {
        #home-news-events .event .inner {
          width: 174px; } }
      @media only screen and (max-width: 572px) {
        #home-news-events .event .inner {
          width: 100% !important; } }
    #home-news-events .event p {
      position: relative;
      z-index: 1; }
      #home-news-events .event p.title {
        margin-bottom: .5em;
        font-size: 1.5em;
        font-family: "Roboto Slab", serif;
        font-weight: 300;
        line-height: 1.25; }
      #home-news-events .event p.body {
        font-size: .9em; }
      #home-news-events .event p:last-child {
        margin-bottom: 0; }
    #home-news-events .event:before {
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 600px;
      background: transparent url(../images/event-shadow.png) no-repeat 0 0;
      background-size: cover;
      content: ''; }
      @media only screen and (max-width: 572px) {
        #home-news-events .event:before {
          top: auto; } }
    #home-news-events .event .bg {
      position: absolute;
      z-index: 0;
      top: 0;
      left: 0;
      width: 100%;
      max-width: none;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    #home-news-events .event:hover .bg {
      left: -2.5%;
      width: 105%; }
    @media only screen and (max-width: 716px) {
      #home-news-events .event {
        left: 10px; }
        #home-news-events .event .button, #home-news-events .event .cart-button, #home-news-events .event .sidebar-callout p.action, .sidebar-callout #home-news-events .event p.action {
          text-align: center; } }
    @media only screen and (max-width: 572px) {
      #home-news-events .event {
        left: auto;
        height: auto;
        margin-bottom: 2em;
        padding-bottom: 0; }
        #home-news-events .event .inner {
          position: relative;
          bottom: auto;
          padding: 5em 2.5em 2.5em 2.5em;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; } }

/* --- New Pattern Styles --- */
.sub-header, .home-landing h1 span {
  font-size: 1rem;
  font-weight: 700 !important;
  font-family: "Roboto Condensed", sans-serif !important;
  letter-spacing: 0.05625em;
  line-height: 1.875;
  text-transform: uppercase;
  color: inherit; }

/* --- New Home Page Styles --- */
.home-page .home-heading, .footer-callouts .callout-heading {
  font-size: 2.25rem;
  line-height: 1.166;
  font-weight: 300;
  font-style: normal;
  font-family: "Roboto Slab", serif;
  text-wrap: balance; }
  @media only screen and (max-width: 1004px) {
    .home-page .home-heading, .footer-callouts .callout-heading {
      font-size: 2rem; } }
  @media only screen and (max-width: 860px) {
    .home-page .home-heading, .footer-callouts .callout-heading {
      font-size: 1.7rem; } }
  @media only screen and (max-width: 716px) {
    .home-page .home-heading, .footer-callouts .callout-heading {
      font-size: 1.66rem; } }
  @media only screen and (max-width: 572px) {
    .home-page .home-heading, .footer-callouts .callout-heading {
      font-size: 1.5rem; } }

.home-page {
  --min_block_padding: 3.75rem; }
  @media only screen and (max-width: 716px) {
    .home-page {
      --min_block_padding: 3.5rem; } }
  @media only screen and (max-width: 716px) {
    .home-page {
      --min_block_padding: 3.25rem; } }
  .home-page h1, .home-page h2, .home-page h3, .home-page h4, .home-page h5, .home-page h6, .home-page p, .home-page blockquote, .home-page ul, .home-page ol {
    margin: 0;
    color: inherit;
    text-align: inherit; }
  .home-page a {
    color: inherit;
    text-decoration: none; }
  .home-page img, .home-page svg, .home-page video {
    display: block; }

.home-landing {
  --min_block_padding: 3.75rem;
  --content_spacing: 1.75rem;
  position: relative;
  display: grid;
  align-content: center;
  color: #FFF;
  background-color: #174D35; }
  .home-landing:has(.landing-bg)::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image: linear-gradient(rgba(40, 40, 40, 0.4)), linear-gradient(90deg, rgba(0, 72, 52, 0.8) clamp(0px, 40.125rem, 25dvw), transparent clamp(20rem, 60rem, 50dvw), transparent); }
  .home-landing h1, .home-landing p {
    text-wrap: balance; }
  .home-landing h1 {
    font-size: clamp(3rem, calc(1rem + 5dvw), 5.125rem);
    line-height: 0.878; }
    .home-landing h1 span {
      display: block;
      margin-block-end: 0;
      font-size: 1.75rem;
      font-size: clamp(1.25rem, calc(.5rem + 2.2dvw), 1.75rem);
      color: #8FDD50; }
  .home-landing p {
    font-size: 1.125rem; }
  .home-landing p::before {
    display: block;
    content: '';
    margin-block-end: var(--content_spacing);
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1); }
  .home-landing .landing-layout {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    padding-block: var(--min_block_padding);
    min-height: clamp(0px, calc(1rem + 41dvw), calc(100dvh - var(--min_block_padding) * 2)); }
  .home-landing .landing-content {
    max-width: 40.125rem; }
    .home-landing .landing-content > :not(:last-child) {
      margin-bottom: var(--content_spacing); }
  .home-landing .landing-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center; }

.home-5050 {
  --min_block_padding: 3.75rem;
  --content_spacing: 1.25rem;
  --content_inline_padding: clamp(20px, 7dvw, 120px);
  display: grid;
  grid-template-columns: 50% 50%;
  grid-template-rows: 1fr;
  color: #FFF;
  background-color: #006A4D; }
  .home-5050 > * {
    grid-row: 1; }
  .home-5050:has(.bg-half:first-child) .content-wrapper .half-content {
    margin-inline-start: auto;
    margin-inline-end: 0;
    padding-inline-start: var(--content_inline_padding);
    padding-inline-end: 0; }
  .home-5050 blockquote {
    margin-block: var(--content_spacing) 3.75rem; }
    .home-5050 blockquote::before, .home-5050 blockquote::after {
      display: inline-block;
      width: 25.5px;
      height: 18.5px;
      vertical-align: top;
      color: #8FDD50;
      font: inherit;
      content: url("/images/icons/lquote.svg");
      filter: brightness(0) saturate(100%) invert(100%) sepia(27%) saturate(5484%) hue-rotate(32deg) brightness(104%) contrast(72%);
      white-space: nowrap;
      translate: 0 -.2em; }
    .home-5050 blockquote::before {
      margin-inline-start: calc(-.5ch + -25.5px);
      margin-inline-end: .5ch; }
    .home-5050 blockquote::after {
      margin-inline-start: .5ch;
      content: url("/images/icons/rquote.svg"); }
  .home-5050 .sub-header, .home-5050 .home-landing h1 span, .home-landing h1 .home-5050 span {
    color: #8FDD50;
    font-size: 1rem; }
    .home-5050 .sub-header:has(~ blockquote)::after, .home-5050 .home-landing h1 span:has(~ blockquote)::after, .home-landing h1 .home-5050 span:has(~ blockquote)::after {
      display: block;
      width: 100%;
      height: 1px;
      margin-block-start: var(--content_spacing);
      background-color: rgba(255, 255, 255, 0.1);
      content: ''; }
  .home-5050 .content-wrapper {
    z-index: 2;
    grid-row: 1;
    grid-column: 1 / -1;
    padding-block: var(--min_block_padding);
    min-height: calc(52.875rem - var(--min_block_padding) * 2);
    align-content: center;
    box-sizing: border-box; }
    .home-5050 .content-wrapper .half-content {
      max-width: 50%;
      margin-inline-start: 0;
      margin-inline-end: auto;
      padding-inline-start: 0;
      padding-inline-end: var(--content_inline_padding);
      box-sizing: border-box; }
    .home-5050 .content-wrapper .content-buttons {
      display: grid;
      gap: 15px;
      justify-items: start;
      margin-block-start: var(--content_spacing); }
  .home-5050 .bg-half {
    position: relative;
    grid-column: 2;
    background-color: #174D35; }
    .home-5050 .bg-half:first-child {
      grid-column: 1; }
    .home-5050 .bg-half img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center top; }
  @media only screen and (max-width: 860px) {
    .home-5050 {
      grid-template-columns: 1fr;
      text-align: center; }
      .home-5050 .content-wrapper {
        padding-block-start: 16rem;
        min-height: auto; }
      .home-5050 .content-wrapper .half-content {
        max-width: 100%;
        padding-inline: 0 !important; }
      .home-5050 .bg-half {
        grid-column: 1;
        filter: opacity(0.6) brightness(0.7); }
      .home-5050 blockquote {
        margin-block-end: 2rem; }
      .home-5050 blockquote::before, .home-5050 blockquote::after {
        display: block;
        margin-block: 1rem;
        margin-inline: auto; }
      .home-5050 .content-buttons {
        justify-content: center;
        justify-items: center !important; } }

.home-supports-section {
  position: relative;
  padding-block: 10.3125rem; }
  .home-supports-section .supports-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: -1;
    opacity: .1;
    filter: grayscale(100%); }
  .home-supports-section .sub-header, .home-supports-section .home-landing h1 span, .home-landing h1 .home-supports-section span {
    color: #69BE28;
    font-size: 1rem; }
  .home-supports-section .section-header {
    text-align: center;
    color: #097054; }
    .home-supports-section .section-header > :not(:last-child) {
      margin-block-end: 1.25rem; }
  .home-supports-section .supports-cards {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr;
    margin-block-start: 3.75rem; }
    @media only screen and (max-width: 860px) {
      .home-supports-section .supports-cards {
        grid-template-columns: 1fr;
        margin-block-start: 2rem; } }
    .home-supports-section .supports-cards > a {
      container-type: inline-size;
      container-name: home-card; }
  .home-supports-section .home-card {
    display: grid;
    grid-template-rows: auto 1fr;
    height: 100%; }
    .home-supports-section .home-card:is(:hover, :focus-visible) img {
      scale: 1.08; }
    .home-supports-section .home-card:is(:hover, :focus-visible) .card-heading {
      text-decoration: underline; }
    .home-supports-section .home-card p {
      margin-block-start: .65rem;
      font-size: 1.125rem;
      line-height: 1.33; }
    .home-supports-section .home-card img {
      width: 100%;
      object-fit: cover;
      object-position: center;
      transition: .2s ease; }
    .home-supports-section .home-card .img-wrap {
      background-color: #174D35;
      aspect-ratio: 358 / 236;
      overflow: hidden; }
    .home-supports-section .home-card .card-content {
      padding: 2rem 40px 2.5rem;
      background-color: #FFF; }

@container home-card (max-width: 320px) {
  .home-supports-section .home-card .card-content {
    padding: 1.25rem 24px 1.5rem; }
    .home-supports-section .home-card .card-content .card-heading {
      font-size: 1.25rem; }
    .home-supports-section .home-card .card-content p {
      font-size: 1rem; } }
    .home-supports-section .home-card .card-heading {
      font-size: 1.5rem;
      font-family: "Roboto Slab", serif;
      font-weight: 300;
      line-height: 1.25;
      color: #097054; }
  @media only screen and (max-width: 860px) {
    .home-supports-section {
      padding-block: 7rem; } }
  @media only screen and (max-width: 860px) {
    .home-supports-section {
      padding-block: 5rem; } }
  @media only screen and (max-width: 716px) {
    .home-supports-section {
      padding-block: var(--min_block_padding); } }

.home-testimonials-section {
  position: relative;
  padding-block: 10.3125rem;
  color: #FFF;
  background-color: #001F17; }
  .home-testimonials-section .section-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 1;
    opacity: .3; }
  .home-testimonials-section .lucy-wrapper {
    position: relative;
    z-index: 1; }
  .home-testimonials-section .testimonial-wrapper {
    display: grid;
    gap: 2.5rem;
    text-align: center; }
    .home-testimonials-section .testimonial-wrapper blockquote {
      line-height: 1.27; }
    .home-testimonials-section .testimonial-wrapper blockquote + .button, .home-testimonials-section .testimonial-wrapper blockquote + .cart-button, .home-testimonials-section .testimonial-wrapper .sidebar-callout blockquote + p.action, .sidebar-callout .home-testimonials-section .testimonial-wrapper blockquote + p.action {
      margin-block-start: 1.25rem; }
    .home-testimonials-section .testimonial-wrapper svg {
      width: 26px;
      height: auto;
      margin-inline: auto;
      color: #8FDD50; }
  @media only screen and (max-width: 860px) {
    .home-testimonials-section {
      padding-block: 7rem; } }
  @media only screen and (max-width: 860px) {
    .home-testimonials-section {
      padding-block: 5rem; } }
  @media only screen and (max-width: 716px) {
    .home-testimonials-section {
      padding-block: var(--min_block_padding); } }

.side-event {
  position: relative;
  margin-bottom: 1em; }
  .side-event h3 {
    font-family: "Roboto Slab", serif;
    font-size: 20px; }
  .side-event ul {
    margin-bottom: 10px;
    padding-left: 0 !important;
    list-style-type: none; }
    .side-event ul li {
      margin-bottom: 8px;
      letter-spacing: .8px;
      font-size: 13px; }
      .side-event ul li a {
        font-size: 16px;
        letter-spacing: 0; }
  .side-event p.date {
    margin: 5px 0; }
  .side-event p a {
    position: absolute;
    top: 5px;
    right: 65px;
    display: inline-block;
    color: #FFD772;
    font-weight: 500;
    text-transform: uppercase; }
    @media only screen and (max-width: 1148px) {
      .side-event p a {
        right: 25px; } }
    @media only screen and (max-width: 1004px) {
      .side-event p a {
        position: relative;
        top: auto;
        right: auto;
        margin-top: 10px; } }
    @media only screen and (max-width: 716px) {
      .side-event p a {
        position: absolute;
        top: 5px;
        left: 200px;
        margin-top: 0; } }
    .side-event p a:before {
      position: absolute;
      top: -5px;
      left: -15px;
      content: '';
      width: 1px;
      height: 25px;
      background: #D7D7D7; }
      @media only screen and (max-width: 1004px) {
        .side-event p a:before {
          display: none; } }
      @media only screen and (max-width: 716px) {
        .side-event p a:before {
          display: block; } }
  .side-event a {
    text-decoration: none; }
    .side-event a:hover {
      text-decoration: underline; }

#social-widget {
  margin-bottom: 2em; }

/* --- Footer --- */
footer {
  color: #FFF;
  background-color: #174D35; }
  footer h2, footer h3, footer h4, footer p, footer ul, footer ol, footer a {
    margin: 0;
    color: inherit; }
  footer img, footer svg {
    display: block; }

/* --- Callouts --- */
.footer-callouts {
  padding-block: 4rem 5.8rem;
  color: #FFF;
  background-color: #097054; }
  .footer-callouts h2, .footer-callouts p, .footer-callouts a {
    margin: 0;
    color: inherit; }
  .footer-callouts a {
    text-decoration: none; }
    .footer-callouts a:is(:hover, :focus-visible) .callout-heading {
      text-decoration: underline;
      text-underline-offset: .1em; }
  .footer-callouts .callout-heading {
    margin-block-end: 1.25rem; }
  .footer-callouts .callout-body {
    font-size: 1.125rem;
    margin-block-end: 1.875rem; }
  .footer-callouts .callouts-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.75rem clamp(20px, 5vw, 100px); }
    @media only screen and (max-width: 860px) {
      .footer-callouts .callouts-layout {
        grid-template-columns: 1fr;
        justify-content: center;
        text-align: center; } }
  @media only screen and (max-width: 860px) {
    .footer-callouts {
      padding-block: 3rem 4rem; } }
  @media only screen and (max-width: 716px) {
    .footer-callouts {
      padding-block: 2.75rem 3rem; } }

/* --- Power Footer --- */
#power {
  padding-block: 5.3125rem 2.125rem;
  color: #FFF;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }
  @media only screen and (max-width: 716px) {
    #power {
      padding-block: 3rem 1.5rem;
      text-align: center; }
      #power p.title {
        font-size: 16px !important; }
      #power a {
        font-size: 14px !important; } }
  #power #quick-links {
    display: none;
    width: 542px;
    padding-inline: 20px;
    margin-bottom: 0; }
    @media only screen and (max-width: 716px) {
      #power #quick-links {
        display: block; } }
    @media only screen and (max-width: 572px) {
      #power #quick-links {
        width: 100%; } }
  #power .footer-nav-outer {
    --col_space: clamp(20px, 2.2dvw, 40px);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem var(--col_space); }
    #power .footer-nav-outer .footer-left-layout, #power .footer-nav-outer .footer-right-layout {
      display: grid;
      gap: 2rem var(--col_space);
      justify-content: space-between; }
    #power .footer-nav-outer .footer-left-layout {
      grid-template-columns: repeat(3, auto); }
    #power .footer-nav-outer .footer-right-layout {
      grid-template-columns: repeat(2, 1fr); }
      #power .footer-nav-outer .footer-right-layout > div {
        padding-inline-start: var(--col_space);
        border-inline-start: 1px solid rgba(255, 255, 255, 0.6); }
    @media only screen and (max-width: 1004px) {
      #power .footer-nav-outer {
        grid-template-columns: 1fr; }
        #power .footer-nav-outer .footer-left-layout, #power .footer-nav-outer .footer-right-layout {
          justify-content: space-evenly;
          justify-items: center; }
        #power .footer-nav-outer .footer-right-layout {
          grid-template-columns: repeat(2, fit-content(300px)); }
        #power .footer-nav-outer .footer-right-layout > div {
          padding-inline-start: 0;
          border-inline-start: none; }
        #power .footer-nav-outer .body {
          font-size: 14px !important; } }
    @media only screen and (max-width: 716px) {
      #power .footer-nav-outer .footer-left-layout {
        display: none; }
      #power .footer-nav-outer .footer-right-layout {
        grid-template-columns: 1fr; } }
  #power .title {
    margin-bottom: .5em;
    font-family: "Roboto Slab", serif;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: .7px; }
  #power ul {
    margin: 0 0 .875rem 0;
    padding: 0;
    line-height: 1.6;
    font-size: 0.6875rem;
    list-style-type: none; }
    #power ul:last-child {
      margin-bottom: 0; }
    #power ul li {
      margin-bottom: .2em; }
      #power ul li a {
        letter-spacing: .5px; }
    @media only screen and (max-width: 1004px) {
      #power ul {
        font-size: 14px !important; } }
  #power a, #power a:active, #power a:visited {
    color: #FFF;
    text-decoration: none;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    #power a:hover, #power a:active:hover, #power a:visited:hover {
      text-decoration: underline; }
  #power .border-right {
    border-color: #FFF; }
  @media only screen and (max-width: 716px) {
    #power .connect {
      width: 100%;
      margin-left: 0;
      padding: 2em 3em 1em 3em !important;
      background: #075842;
      border-left: 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; } }
  #power .connect .section {
    margin-bottom: .75em;
    font-size: 1.1em;
    font-family: "Roboto Slab", serif;
    font-weight: 300; }
    @media only screen and (max-width: 716px) {
      #power .connect .section {
        font-size: 22px; } }
  #power .connect .body {
    font-size: .9em; }
  @media only screen and (max-width: 716px) {
    #power .contact {
      width: 100%;
      margin-left: 0;
      padding-left: 0 !important;
      border-left: none; } }
  #power .contact .section {
    margin-bottom: .5em;
    font-family: "Roboto Slab", serif;
    text-transform: uppercase;
    font-weight: 800;
    font-size: .8em; }
    @media only screen and (max-width: 716px) {
      #power .contact .section {
        font-size: 18px; } }
  #power .contact .body {
    line-height: 1.6;
    font-size: .7em; }
    @media only screen and (max-width: 716px) {
      #power .contact .body {
        font-size: 16px; } }
  #power .contact .visit img {
    display: inline-block;
    width: 64px;
    margin-right: 1em;
    vertical-align: middle; }
  #power .contact .visit a, #power .contact .visit a:active, #power .contact .visit a:visited {
    display: inline-block;
    color: #FFF;
    text-decoration: none;
    font-weight: 300;
    font-family: "Roboto Slab", serif;
    vertical-align: middle;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    #power .contact .visit a:hover, #power .contact .visit a:active:hover, #power .contact .visit a:visited:hover {
      text-decoration: underline; }
  @media only screen and (max-width: 572px) {
    #power .span4, #power .span5 {
      margin-bottom: 2em; } }

/* --- Copyright --- */
#copyright {
  padding: 2rem 0 4rem 0;
  color: #FFF;
  font-size: .7em;
  background-color: #174D35;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }
  @media only screen and (max-width: 716px) {
    #copyright {
      text-align: center; }
      #copyright p {
        margin-right: 0 !important; } }
  #copyright p {
    display: inline-block;
    margin-right: 1em;
    vertical-align: middle; }
    @media only screen and (max-width: 1148px) {
      #copyright p {
        margin-right: .8em; } }
    #copyright p.right {
      float: right; }
  #copyright a, #copyright a:active, #copyright a:visited {
    color: #FFF;
    text-decoration: none;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    #copyright a:hover, #copyright a:active:hover, #copyright a:visited:hover {
      text-decoration: underline; }
  #copyright img {
    height: 16px;
    vertical-align: middle; }
  #copyright .right {
    margin-right: 0; }
  #copyright .right a {
    margin-right: .8em;
    padding-right: 1em;
    border-right: 1px solid #FFF; }
  #copyright .right a:last-child {
    margin: 0;
    padding: 0;
    border: none; }
  @media only screen and (max-width: 1004px) {
    #copyright p.right {
      float: none; } }

/* --- Special Callouts --- */
.graphical-callout {
  position: relative;
  display: block;
  height: 0;
  background-size: 100% 100%;
  background-position: top center;
  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: 860px) {
    .graphical-callout {
      background-size: 100%;
      background-repeat: no-repeat;
      background-color: #000; } }
  @media only screen and (max-width: 716px) {
    .graphical-callout {
      background-size: 100% 100%; } }
  @media only screen and (max-width: 572px) {
    .graphical-callout {
      height: auto;
      padding: 0 !important;
      background-color: #075842; } }
  .graphical-callout .inner {
    position: absolute;
    z-index: 1;
    bottom: 2em;
    left: 0;
    width: 100%;
    color: #FFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    @media only screen and (max-width: 860px) {
      .graphical-callout .inner {
        bottom: 1em; } }
    @media only screen and (max-width: 716px) {
      .graphical-callout .inner {
        padding: 1em;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; } }
    @media only screen and (max-width: 572px) {
      .graphical-callout .inner {
        position: relative;
        background-color: #075842; } }
    .graphical-callout .inner .title {
      margin-bottom: .5em;
      font-size: 1.5em;
      font-family: "Roboto Slab", serif;
      font-weight: 500; }
      .graphical-callout .inner .title strong {
        font-weight: 800; }
    .graphical-callout .inner .body {
      margin-bottom: 0;
      font-size: .9em;
      font-weight: 300;
      line-height: 1.4; }
  .graphical-callout .button, .graphical-callout .cart-button, .graphical-callout .sidebar-callout p.action, .sidebar-callout .graphical-callout p.action {
    letter-spacing: 1.5px; }
  .graphical-callout:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/callout-shadow.png) no-repeat bottom left;
    background-size: cover;
    content: ''; }
    @media only screen and (max-width: 572px) {
      .graphical-callout:before {
        display: none; } }
  .graphical-callout:hover {
    background-size: 105% 105%; }

.span15 .graphical-callout, .full-width .graphical-callout {
  margin-bottom: 3em;
  padding-bottom: 35%; }
  @media only screen and (max-width: 860px) {
    .span15 .graphical-callout, .full-width .graphical-callout {
      padding-bottom: 45%; } }
  @media only screen and (max-width: 716px) {
    .span15 .graphical-callout, .full-width .graphical-callout {
      padding-bottom: 35%; } }
  .span15 .graphical-callout .button, .span15 .graphical-callout .cart-button, .span15 .graphical-callout .sidebar-callout p.action, .sidebar-callout .span15 .graphical-callout p.action, .full-width .graphical-callout .button, .full-width .graphical-callout .cart-button, .full-width .graphical-callout .sidebar-callout p.action, .sidebar-callout .full-width .graphical-callout p.action {
    position: absolute;
    top: 100%;
    width: 100%;
    padding-block: 1.1rem;
    text-align: center;
    font-size: 1.125rem !important;
    letter-spacing: 1.5px; }
    @media only screen and (max-width: 716px) {
      .span15 .graphical-callout .button, .span15 .graphical-callout .cart-button, .span15 .graphical-callout .sidebar-callout p.action, .sidebar-callout .span15 .graphical-callout p.action, .full-width .graphical-callout .button, .full-width .graphical-callout .cart-button, .full-width .graphical-callout .sidebar-callout p.action, .sidebar-callout .full-width .graphical-callout p.action {
        font-size: 1rem !important; } }
    .span15 .graphical-callout .button:hover, .span15 .graphical-callout .cart-button:hover, .span15 .graphical-callout .sidebar-callout p.action:hover, .sidebar-callout .span15 .graphical-callout p.action:hover, .full-width .graphical-callout .button:hover, .full-width .graphical-callout .cart-button:hover, .full-width .graphical-callout .sidebar-callout p.action:hover, .sidebar-callout .full-width .graphical-callout p.action:hover {
      transform: scale(1);
      perspective: 1000px;
      -moz-transform: scale(1);
      -moz-perspective: 1000;
      -webkit-transform: scale(1);
      -webkit-perspective: 1000;
      -o-transform: scale(1);
      -o-perspective: 1000;
      -ms-transform: scale(1);
      -ms-perspective: 1000; }
  .span15 .graphical-callout.donation, .full-width .graphical-callout.donation {
    background-image: url(../images/donate-callout-bg.jpg); }
    @media only screen and (max-width: 572px) {
      .span15 .graphical-callout.donation, .full-width .graphical-callout.donation {
        margin-top: 4em;
        background-image: none; } }
  .span15 .graphical-callout .inner .button, .span15 .graphical-callout .inner .cart-button, .span15 .graphical-callout .inner .sidebar-callout p.action, .sidebar-callout .span15 .graphical-callout .inner p.action, .full-width .graphical-callout .inner .button, .full-width .graphical-callout .inner .cart-button, .full-width .graphical-callout .inner .sidebar-callout p.action, .sidebar-callout .full-width .graphical-callout .inner p.action {
    display: none; }

.span7 .graphical-callout {
  padding-bottom: 182%;
  text-decoration: none;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
  -o-box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2); }
  @media only screen and (max-width: 716px) {
    .span7 .graphical-callout {
      padding-bottom: 110%;
      background-size: cover; } }
  @media only screen and (max-width: 572px) {
    .span7 .graphical-callout {
      background-image: none !important; } }
  .span7 .graphical-callout .inner {
    padding: 0 3em;
    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: 1004px) {
      .span7 .graphical-callout .inner {
        padding: 0 2em; } }
    @media only screen and (max-width: 860px) {
      .span7 .graphical-callout .inner {
        padding: 0 2em; }
        .span7 .graphical-callout .inner .title {
          font-size: 1.3em; } }
    @media only screen and (max-width: 716px) {
      .span7 .graphical-callout .inner {
        display: block;
        padding: 2em 2em .5em 2em; }
        .span7 .graphical-callout .inner .title {
          font-size: 2em; } }
    @media only screen and (max-width: 572px) {
      .span7 .graphical-callout .inner .title {
        font-size: 1.5em; } }
    .span7 .graphical-callout .inner .body {
      margin-bottom: 1.5em;
      font-size: 1em; }
      @media only screen and (max-width: 1004px) {
        .span7 .graphical-callout .inner .body {
          font-size: .9em; } }
      @media only screen and (max-width: 860px) {
        .span7 .graphical-callout .inner .body {
          display: none; } }
      @media only screen and (max-width: 716px) {
        .span7 .graphical-callout .inner .body {
          display: block;
          font-size: 1.2em; } }
      @media only screen and (max-width: 572px) {
        .span7 .graphical-callout .inner .body {
          font-size: 1em; } }
  .span7 .graphical-callout:before {
    height: 60% !important; }
    @media only screen and (max-width: 1148px) {
      .span7 .graphical-callout:before {
        height: 80% !important; } }
    @media only screen and (max-width: 1004px) {
      .span7 .graphical-callout:before {
        height: 100% !important; } }
  .span7 .graphical-callout .button, .span7 .graphical-callout .cart-button, .span7 .graphical-callout .sidebar-callout p.action, .sidebar-callout .span7 .graphical-callout p.action {
    width: 100%;
    padding-block: 1em;
    text-align: center; }
    @media only screen and (max-width: 1004px) {
      .span7 .graphical-callout .button, .span7 .graphical-callout .cart-button, .span7 .graphical-callout .sidebar-callout p.action, .sidebar-callout .span7 .graphical-callout p.action {
        margin-bottom: 0; } }
    @media only screen and (max-width: 860px) {
      .span7 .graphical-callout .button, .span7 .graphical-callout .cart-button, .span7 .graphical-callout .sidebar-callout p.action, .sidebar-callout .span7 .graphical-callout p.action {
        margin-bottom: 1em; }
        .span7 .graphical-callout .button span, .span7 .graphical-callout .cart-button span, .span7 .graphical-callout .sidebar-callout p.action span, .sidebar-callout .span7 .graphical-callout p.action span {
          display: none; } }
    @media only screen and (max-width: 716px) {
      .span7 .graphical-callout .button span, .span7 .graphical-callout .cart-button span, .span7 .graphical-callout .sidebar-callout p.action span, .sidebar-callout .span7 .graphical-callout p.action span {
        display: inline-block; } }
  .span7 .graphical-callout.donation {
    background-image: url(../images/donate-callout-bg-tall.jpg); }
    @media only screen and (max-width: 860px) {
      .span7 .graphical-callout.donation .body {
        display: block; } }
  .span7 .graphical-callout .button.large, .span7 .graphical-callout .large.cart-button, .span7 .graphical-callout .sidebar-callout p.large.action, .sidebar-callout .span7 .graphical-callout p.large.action {
    display: none; }

/* --- Miscellaneous --- */
.mobile-only {
  display: none; }
  @media only screen and (max-width: 572px) {
    .mobile-only {
      display: block; } }
  .mobile-only .subtitle {
    color: #097054;
    font-size: 1.2em;
    font-family: "Roboto Slab", serif;
    font-weight: 300; }

.left-arrow, .right-arrow {
  position: relative;
  display: inline-block;
  width: 26px;
  height: 11px;
  border-bottom: 3px solid #FFD772;
  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; }
  .left-arrow:after, .right-arrow:after {
    position: absolute;
    top: 7px;
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }

.left-arrow {
  position: relative;
  left: 0;
  top: -5.5px;
  left: 6px; }
  .left-arrow:after {
    left: -6px;
    border-width: 5.5px 6px 5.5px 0;
    border-color: transparent #FFD772 transparent transparent; }

.right-arrow:after {
  right: -6px;
  border-width: 5.5px 0 5.5px 6px;
  border-color: transparent transparent transparent #FFD772; }

.sidebar-callout {
  display: block;
  margin-bottom: 2em;
  padding-bottom: 1em;
  text-decoration: none; }
  .sidebar-callout p {
    margin-bottom: 1em; }
    .sidebar-callout p.title {
      margin-bottom: .5em;
      font-size: 1.5em; }
    .sidebar-callout p.action {
      text-align: center; }

.stats {
  margin-bottom: 2em;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  text-align: center; }
  .stats p {
    margin-bottom: 0; }
  .stats strong {
    display: inline-block;
    margin-bottom: .2em;
    font-size: 3em;
    color: #097054;
    font-weight: 300;
    font-family: "Roboto Slab", serif; }
  .stats .span8 {
    padding: 0 2em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  @media only screen and (max-width: 716px) {
    .stats {
      margin-bottom: 0; }
      .stats .span7, .stats .span8 {
        width: 100% !important;
        margin-bottom: 1.5em;
        margin-left: 0;
        padding: 0 !important;
        border: none !important; }
        .stats .span7 strong, .stats .span8 strong {
          margin-bottom: 0;
          line-height: 1.1; } }

#impact-intro {
  margin-bottom: 3em;
  text-align: center; }

.campaign-box {
  margin-bottom: 3em;
  background: #FFF;
  box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -o-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
  -ms-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15); }
  .campaign-box .bar {
    position: relative;
    width: 100%;
    height: 40px;
    background: #DDD5D0;
    overflow: hidden; }
    .campaign-box .bar .fill {
      position: absolute;
      top: 0;
      left: 0;
      width: 0;
      height: 40px;
      background: transparent url(../images/donate-bar.jpg) repeat-y 0 0;
      transition: width 0.65s ease-in-out;
      -moz-transition: width 0.65s ease-in-out;
      -webkit-transition: width 0.65s ease-in-out;
      -o-transition: width 0.65s ease-in-out;
      -ms-transition: width 0.65s ease-in-out; }
      .campaign-box .bar .fill label {
        position: absolute;
        top: 0;
        right: 15px;
        line-height: 40px;
        font-size: .75em;
        color: #FFF;
        font-family: "Roboto", sans-serif; }
      .campaign-box .bar .fill.narrow label {
        left: 100%;
        margin-left: 15px;
        color: #222; }
  .campaign-box .title {
    margin-bottom: .5em;
    color: #097054;
    font-size: 1.1em; }
  .campaign-box .inner {
    padding: 2em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  .campaign-box .button, .campaign-box .cart-button, .campaign-box .sidebar-callout p.action, .sidebar-callout .campaign-box p.action {
    width: 100%;
    padding: 1.5em 0;
    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; }
    .campaign-box .button:hover, .campaign-box .cart-button:hover, .campaign-box .sidebar-callout p.action:hover, .sidebar-callout .campaign-box p.action:hover {
      transform: translate(0, 0);
      perspective: 1000px;
      -moz-transform: translate(0, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(0, 0);
      -o-perspective: 1000;
      -ms-transform: translate(0, 0);
      -ms-perspective: 1000;
      transform: scale(1);
      perspective: 1000px;
      -moz-transform: scale(1);
      -moz-perspective: 1000;
      -webkit-transform: scale(1);
      -webkit-perspective: 1000;
      -o-transform: scale(1);
      -o-perspective: 1000;
      -ms-transform: scale(1);
      -ms-perspective: 1000; }
