/* States Rules */

.is-center {
    display: block;

    margin: 20px auto;
}

.is-text-center {
    text-align: center;
}

.is-text-right {
    text-align: right;
}

.is-text-upper {
    text-transform: uppercase;
}

.is-strikethrough {
    position: relative;
}

.is-strikethrough::after {
    position: absolute;
    top: 42%;
    right: 0;

    width: 683px;
    height: 8px;

    content: '';

    background: url('../images/title-lines-sprite.png') no-repeat -247px -19px;
}

.is-strikethrough--2::after {
    width: 652px;

    background-position: -278px -64px;
}

.is-strikethrough--3::after {
    width: 559px;

    background-position: -371px -154px;
}

.is-strikethrough--4::after {
    width: 543px;
    height: 9px;

    background-position: -387px -200px;
}

.is-strikethrough--5::after {
    width: 502px;

    background-position: -428px -245px;
}

.is-strikethrough--6::after {
    width: 487px;

    background-position: -443px -292px;
}

.is-strikethrough--7::after {
    width: 396px;

    background-position: -534px -335px;
}

.is-strikethrough--8::after {
    width: 293px;

    background-position: -637px -377px;
}

.is-strikethrough--9::after {
    width: 275px;

    background-position: -655px -423px;
}

.is-strikethrough--10::after {
    width: 175px;

    background-position: -755px -508px;
}

.is-strikethrough--both {
    position: relative;

    overflow: hidden;
}

.is-strikethrough--both::after {
    position: absolute;
    top: 42%;
    right: 0;

    width: 247px;
    height: 9px;

    content: '';

    background: url('../images/title-lines-sprite.png') no-repeat -683px -603px;
}

.is-strikethrough--both.is-strikethrough--2::after {
    width: 229px;

    background-position: -701px -646px;
}

.is-strikethrough--both.is-strikethrough--3::after {
    width: 205px;

    background-position: -725px -694px;
}

.is-strikethrough--both.is-strikethrough--4::after {
    width: 117px;

    background-position: -813px -738px;
}

.is-strikethrough--both.is-strikethrough--5::after {
    width: 94px;

    background-position: -836px -782px;
}

.is-strikethrough--both.is-strikethrough--6::after {
    right: -50px;

    width: 94px;

    background-position: -836px -782px;
}

.is-strikethrough--both::before {
    position: absolute;
    top: 42%;
    left: 0;

    width: 246px;
    height: 9px;

    content: '';

    background: url('../images/title-lines-sprite.png') no-repeat 0 -603px;
}

.is-strikethrough--both.is-strikethrough--2::before {
    width: 227px;

    background-position: 0 -646px;
}

.is-strikethrough--both.is-strikethrough--3::before {
    width: 211px;

    background-position: 0 -694px;
}

.is-strikethrough--both.is-strikethrough--4::before {
    width: 115px;

    background-position: 0 -738px;
}

.is-strikethrough--both.is-strikethrough--5::before {
    width: 97px;

    background-position: 0 -782px;
}

.is-strikethrough--both.is-strikethrough--6::before {
    left: -52px;

    width: 97px;

    background-position: 0 -782px;
}

.is-left {
    float: left;
}

.is-right {
    float: right;
}

.is-featured::after {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 200;

    position: absolute;
    bottom: 27px;
    left: 0;

    width: 97.5%;
    height: 27px;
    padding-top: 4px;

    content: 'FEATURED';
    text-align: center;

    color: #ffffff;
    background: #4a466f;
}

.is-last {
    margin-right: 0 !important;
}

body.js-modal-open {
    overflow: hidden;
}

.is-bullets--black li {
    background-image: url('../images/bullet-circle.png');
}

.hover-shadow {
    -webkit-transition: all 0.3s ease;
       -moz-transition: all 0.3s ease;
         -o-transition: all 0.3s ease;
            transition: all 0.3s ease;

    -webkit-border-radius: 8px;
       -moz-border-radius: 8px;
            border-radius: 8px;
}

.hover-shadow:hover {
    position: relative;

    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.56), 0 0 40px rgba(0, 0, 0, 0.33) inset;
       -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.56), 0 0 40px rgba(0, 0, 0, 0.33) inset;
            box-shadow: 0 1px 4px rgba(0, 0, 0, 0.56), 0 0 40px rgba(0, 0, 0, 0.33) inset;
}

.hover-shadow:hover:before,
.hover-shadow:hover:after {
    position: absolute;
    z-index: -1;
    top: 10px;
    right: 0;
    bottom: 10px;
    left: 0;

    content: '';

    -moz-border-radius: 100px / 10px;
         border-radius: 100px / 10px;
    -webkit-box-shadow: 0 0 20px rgba(0,0,0,0.8);
       -moz-box-shadow: 0 0 20px rgba(0,0,0,0.8);
            box-shadow: 0 0 20px rgba(0,0,0,0.8);
}

.hover-shadow:hover:after {
    right: 10px;
    left: auto;

    -webkit-transform: skew(8deg) rotate(3deg);
       -moz-transform: skew(8deg) rotate(3deg);
        -ms-transform: skew(8deg) rotate(3deg);
         -o-transform: skew(8deg) rotate(3deg);
            transform: skew(8deg) rotate(3deg);
}

.hover-effect {
    position: relative;

    text-decoration: none;

    outline: none;
    text-shadow: 0 0 1px rgba(255,255,255,0.3);
}

.hover-effect::after {
    position: absolute;
    top: 100%;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';
    -webkit-transition: height 0.3s, opacity 0.3s, -webkit-transform 0.3s;
       -moz-transition: height 0.3s, opacity 0.3s, -moz-transform 0.3s;
            transition: height 0.3s, opacity 0.3s, transform 0.3s;
    -webkit-transform: translateY(-10px);
       -moz-transform: translateY(-10px);
            transform: translateY(-10px);

    opacity: 0;
    background: #ffffff;
}

.hover-glow:hover .hover-effect::after,
.hover-glow:focus .hover-effect::after,
.hover-effect:hover::after,
.hover-effect:focus::after {
    height: 5px;

    -webkit-transform: translateY(0px);
       -moz-transform: translateY(0px);
            transform: translateY(0px);

    opacity: 1;
}

.hover-glow {
    display: inline-block;

    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
    -webkit-transition-property: box-shadow;
            transition-property: box-shadow;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);

    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

.hover-glow:hover,
.hover-glow:focus,
.hover-glow:active {
    box-shadow: 0 0 8px rgba(0, 0, 0, 1);
}

.is-spacer {
    padding: 10px;
}

.text-red {
    color: #d20033 !important;
}

.LeftColumn {
    float: left;
    position: relative;
    width: 50%;
    z-index: 100;
}

.RightColumn {
    float: left;
    position: relative;
    width: 50%;
    z-index: 100;
}

.clearfix:after {
     visibility: hidden;
     display: block;
     font-size: 0;
     content: " ";
     clear: both;
     height: 0;
     }
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */