@import url(http://fonts.googleapis.com/css?family=Libre+Baskerville:400,700,400italic);
body {
    font-family: 'Helvetica Neue', 'Roboto', 'Arial', sans-serif;
    z-index: 0;
    font-size: medium;
    color: #555;
    background: #cccccc;
    background: -moz-linear-gradient(top, #cc2424 0%, #000 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cc2424), color-stop(100%, #000));
    background: -webkit-linear-gradient(top, #cc2424 0%, #000 100%);
    background: -o-linear-gradient(top, #cc2424 0%, #000 100%);
    background: -ms-linear-gradient(top, #cc2424 0%, #000 100%);
    background: linear-gradient(to bottom, #cc2424 0%, #000 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#cc2424', endColorstr='#000', GradientType=0);
    background-attachment: fixed;
}

body > .container {
    background: url('/images/utils/bg-container.jpg') top fixed;
    box-shadow: 0 0 4px #000;
}

a {
    font-family: 'Libre Baskerville', 'Helvetica Neue', 'Roboto', 'Arial', sans-serif;
    color: #3868cd;
    transition: color 300ms;
}

a:hover {
    color: #3367ec;
    transition: color 100ms;
}

h1,
h2,
h3,
h4 {
    font-family: 'Libre Baskerville', 'Helvetica Neue', 'Roboto', 'Arial', sans-serif;
}

h1,
h3 {
    color: #c00101;
}

h1 {
    font-size: 1.6em;
}

h3 {
    font-size: 1.1em;
}


/*===================================*/


/*====GENERAL CLASSES====*/


/*===================================*/

.row {
    margin-bottom: 15px;
}

.button,
.button > a {
    display: inline-block;
    line-height: 1.6em;
    padding: 0 0.8em;
    color: #fff;
    border: solid 1px #444;
    text-decoration: none;
    border-radius: 4px;
    text-shadow: 0 1px 1px #222;
    /*----*/
    background: #850000;
    background: -moz-linear-gradient(top, #850000 0%, #cc2424 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #850000), color-stop(100%, #cc2424));
    background: -webkit-linear-gradient(top, #850000 0%, #cc2424 100%);
    background: -o-linear-gradient(top, #850000 0%, #cc2424 100%);
    background: -ms-linear-gradient(top, #850000 0%, #cc2424 100%);
    background: linear-gradient(to bottom, #850000 0%, #cc2424 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#850000', endColorstr='#cc2424', GradientType=0);
    /*----*/
    background: #cc2424;
    background: -moz-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cc2424), color-stop(100%, #850000));
    background: -webkit-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -o-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -ms-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: linear-gradient(to bottom, #cc2424 0%, #850000 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#cc2424', endColorstr='#850000', GradientType=0);
}

.button:hover {
    color: #fff;
    background: #cc2424;
}

.col-md-right {
    float: middle;
}


/*===================================*/
/*====HEADER====*/
/*===================================*/

header {
    z-index: 99;
    padding: 1em 0 0 0;
    color: #000;
}

header .right {
    text-align: right;
}

header .logo img {
    width: 300px;
}

header .info {
    font-size: 1.4em;
    text-shadow: 1px 1px 1px #fff;
}

header .shop {
    padding: 0 0 0.5em;
    font-size: 0.9em;
}

header .shop a {
    color: #000;
}

header .shop img {
    width: 20px;
    margin: 0 4px -4px 0;
}

header .social img {
    width: 24px;
    margin: 0 0 -4px 4px;
}


/*===================================*/


/*====FOOTER====*/


/*===================================*/

footer {
    text-align: center;
    padding: 0 0 1em 0;
}

footer .social img {
    width: 28px;
    margin: 0 0 -8px 4px;
}

form.search {
    display: inline-block;
    top: -4px;
}

#google_translate_element {
    border: 1px solid #888;
    display: inline-block;
    margin: 2px 0 1em;
    vertical-align: top;
}


/*====SECTIONS====*/

#main {
    background: #fff;
    padding: 15px;
    min-height: 200px;
    box-shadow: 0 0 2px #444;
    overflow: hidden;
}


/*====ASIDE====*/

aside,
body.aside .col-left {
    float: right;
}

aside {
    background: #ccc;
    padding-bottom: 15px;
}

aside .slideshow {
    height: auto;
}

body.dealers aside {
    background: #fff;
}

body.dealers aside > a {
    display: block;
    font-size: small;
    clear: both;
}

body.dealers aside h3 {
    margin: 0.5em 0;
    line-height: 2.6em;
    overflow: hidden;
}

body.dealers aside h3 img {
    float: left;
    margin: 0 8px 0 0;
}

body.dealers aside {
    background: #fff;
}


/*====ASIDE NAV====*/

aside nav li {
    list-style: none;
    list-width: 50;
    margin: 0 0 0 1em;
}

aside nav li a {
    font-family: 'Helvetica Neue', 'Roboto', 'Arial', serif;
    font-size: small;
    text-decoration: none;
}

aside nav li.selected > a {
    color: #555;
    text-decoration: none;
}

body.dealers aside nav li a {
    font-family: 'Libre Baskerville';
}


/*====ICON TABLE====*/

table.icons {
    width: 100%;
}

table.icons td:nth-child(odd) {
    width: 8%;
    padding: 0 0 5px 0;
}

table.icons td:nth-child(even) {
    width: 25%;
    padding: 0 0 5px 0;
}


/*====BLOCKS====*/

.block {
    background: rgba(255, 255, 255, 0.9);
    background: #fff;
    height: 240px;
    margin-bottom: 15px;
    box-shadow: 0 0 2px #000;
    padding: 8px;
    border-radius: 8px;
}

.block p {
    overflow: hidden;
}

.block-container.half {
    width: 50%;
}

.block-container.half .block {
    height: 400px;
}

.block-container.full {
    width: 100%;
    z-index: 9;
}

.block-container.full .block {
    height: auto;
}

.block-container.third .block {
    padding-bottom: 30px;
}

.block-container.third .button {
    position: absolute;
    bottom: 8px;
    left: 8px;
}


/*===================================*/


/*====NAV====*/


/*===================================*/

header nav {
    background: url('/images/utils/bg-nav.png') repeat-x;
    float: right;
    font-weight: 300;
    border: solid 1px #888;
    border-radius: 8px;
    /*----*/
    background: #cc2424;
    background: -moz-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cc2424), color-stop(100%, #850000));
    background: -webkit-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -o-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: -ms-linear-gradient(top, #cc2424 0%, #850000 100%);
    background: linear-gradient(to bottom, #cc2424 0%, #850000 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#cc2424', endColorstr='#850000', GradientType=0);
}

header nav li {
    float: left;
}

header nav li a {
    display: block;
    padding: 0 0.5em;
    line-height: 2;
    color: #fff8d8;
}

header nav li:hover > a,
header nav li.selected > a {
    color: #fff;
}


/*====2ND LEVEL====*/

header nav li ul {
    background: #c00101;
    display: none;
    position: absolute;
    left: 0.6em;
    top: 100%;
    width: 200px;
    padding: 0 0 0 0.5em;
    text-align: left;
    border-top: solid 1px #888;
    box-shadow: 0 2px 4px #333;
}

header nav li.wide ul {
    width: 260px;
}

header nav li:hover > ul {
    display: block;
}

header nav li li {
    width: 100%;
}

header nav li li a {
    font-size: 0.9em;
    line-height: 1.2;
    padding: 0.3em 0.2em;
    margin: 0;
}

#mobile-menu {
    display: none;
    background: url('/images/utils/white-mobile-nav-icon-x32.png') no-repeat center #c00101;
    height: 2.4em;
    margin-bottom: 0;
}


/*====3RD LEVEL====*/

header nav li li ul {
    top: -1px;
    left: 100%;
    width: 200px;
}


/*====FOOTER NAV====*/

footer nav {
    margin-top: 15px;
    padding: 0 0 0.5em;
}

footer nav li {
    display: inline-block;
    margin: 0 1em;
}

footer nav li a {
    color: #000;
}

footer nav li ul {
    display: none;
}


/*=======================================================================================*/


/*====TESTIMONIALS====*/


/*=======================================================================================*/

.testimonial {
    border-bottom: solid 1px #ccc;
    padding: 0.5em 0;
    margin: 0 0 0.5em 0;
}

.testimonial p {
    margin-bottom: 0.3em;
}

.testimonial .name {
    text-align: right;
}

.animal.detail-item .testimonial {
    font-size: 0.9em;
    padding: 8px;
    border: solid 1px #ccc;
}


/*=======================================================================================*/


/*====BLOG====*/


/*=======================================================================================*/

.post .author {
    overflow: hidden;
}

.post .avatar {
    background: url('/images/authors/niteguard-product-x125.jpg');
    background-size: contain;
    display: block;
    float: left;
    width: 60px;
    height: 60px;
    margin: 0 8px 4px 0;
}

.post .avatar.Katie {
    background: url('/images/authors/katie.jpg');
    background-size: contain;
}

.post .avatar.Jim {
    background: url('/images/authors/jim.jpg');
    background-size: contain;
}


/*=======================================================================================*/


/*====Home Page Slideshow====*/


/*=======================================================================================*/

.slider {
    display: none;
}

.slider,
.slider .slides .slide {
    width: 100%;
}

.slider .slide .overlay {
    position: absolute;
    background: #000;
    background: rgba(0, 0, 0, 0.7);
    bottom: 3px;
    left: 0;
    width: 100%;
    padding: 10px 100px 10px 10px;
    color: #fff;
    z-index: 999;
}

.slider .slide a {
    color: #fff;
}

.slider .controller {
    position: absolute;
    bottom: 15px;
    right: 10px;
    text-align: center;
    z-index: 999;
}

.slider .controller a {
    display: block;
    float: left;
    width: 24px;
    height: 24px;
    margin: 0 0 0 8px;
    text-indent: -999px;
    overflow: hidden;
    opacity: 0.9;
}

.slider .controller a:hover {
    opacity: 1;
}

.slider .prev {
    background: url('/images/utils/white-arrow-left-x24.png') no-repeat;
}

.slider .next {
    background: url('/images/utils/white-arrow-right-x24.png') no-repeat;
}

.slider .play {
    background: url('/images/utils/white-play-x24.png') no-repeat;
}

.slider .pause {
    background: url('/images/utils/white-pause-x24.png') no-repeat;
}


/*=======================================================================================*/


/*====ANIMALS====*/


/*=======================================================================================*/

.list-item.animal {
    float: left;
    width: 310px;
    height: 140px;
    border: solid 1px #ddd;
    padding: 8px;
    margin: 0 15px 15px 0;
    white-space: nowrap;
}

.list-item.animal > * {
    white-space: normal;
}

.list-item.animal:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.list-item.animal img {
    width: 95px;
    margin: 0 15px 0 0;
    vertical-align: middle;
}

.list-item.animal span {
    max-width: 168px;
    display: inline-block;
    vertical-align: middle;
}

.detail-item.animal .pagination {
    display: none;
}

.detail-item.animal .instructions {
    padding: 8px;
    border: solid 1px #ddd;
    border-radius: 10px;
    overflow: hidden;
}

.detail-item.animal .instructions .content {
    margin-bottom: 1em;
}

.detail-item.animal .instructions img {
    float: left;
    max-width: 200px;
    margin: 0 8px 4px 0;
}

.detail-item.animal #flasher {
    margin: 0 auto 0.5em;
}


/*=======================================================================================*/
/*====PRODUCT FEATURES====*/
/*=======================================================================================*/

.product-feature {
    height: 60px;
    white-space: nowrap;
}

.product-feature > div {
    padding: 0;
    height: 100%;
}

.product-feature > div:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    width: 0;
}

.product-feature img {
    vertical-align: middle;
    max-height: 100%;
}

.product-feature .name {
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
}

.product-feature .hover {
    display: none;
    position: absolute;
    top: 100%;
    left: 10px;
    width: 100%;
    background: #000;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 0.8em;
    padding: 6px;
    border-radius: 4px;
    z-index: 999;
    white-space: normal;
}

.product-feature .hover:after {
    content: '';
    position: absolute;
    top: -20px;
    left: 40%;
    display: block;
    height: 10px;
    width: 10px;
    border: solid 10px transparent;
    border-bottom: solid 10px #000;
}

.product-feature:hover {
    z-index: 99;
}

.product-feature:hover .hover {
    display: block;
}

body.home .product-feature {
    height: 100px;
}


/*=======================================================================================*/


/*====FLASH BANNER====*/


/*=======================================================================================*/

#flasherContainer {
    background: #000;
    padding: 1em;
    margin-bottom: 15px;
}

#flasher {
    background: url("/images/flash-banner/610.jpg") repeat scroll 0 0 rgba(0, 0, 0, 0);
    height: 228px;
    margin: auto;
    overflow: hidden;
    position: relative;
    width: 910px;
    box-shadow: 0 0 1em #000 inset;
}

#flasher #flashCircle {
    height: 250px;
    left: 55px;
    opacity: 0;
    position: absolute;
    top: 8px;
    width: 250px;
}

#flasher #flashCone {
    height: 168px;
    left: 180px;
    opacity: 0;
    position: absolute;
    top: 49px;
    width: 499px;
}

#flasher #animals {
    height: 100%;
}

#flasher #animals img {
    bottom: 0;
    display: none;
    filter: inherit;
    opacity: inherit;
    position: absolute;
    right: 0;
}

#flasher:after {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    box-shadow: inset 10px 10px 20px #000, inset -10px -10px 20px #000;
}


/*====CONTROLS====*/

#flasher .control {
    display: none;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 999;
}

#play {
    background: url('/images/utils/white-play-x24.png') no-repeat;
}

#pause {
    background: url('/images/utils/white-pause-x24.png') no-repeat;
}


/*=======================================================================================*/


/*====RESPONSIVE====*/


/*=======================================================================================*/

@media (min-width: 768px) {
    header nav {
        display: block !important;
        margin-top: 10px;
    }
}

@media (max-width: 1023px) {
    header .left,
    header .right {
        text-align: center;
    }
    header nav {
        margin: 0;
        float: none;
        width: auto;
    }
    header nav li a {
        padding: 0 1em;
    }
    .block-container.half {
        width: 100%;
    }
    .block {
        height: auto;
    }
    aside,
    body.aside .col-left {
        float: none;
    }
}

@media (max-width: 767px) {
    /*=====GENERAL CLASSES====*/
    .col-md-right {
        float: none;
    }
    table.clear-md-odd td:nth-child(odd) {
        clear: left;
    }
    table.icons td:nth-child(odd),
    table.icons td:nth-child(even) {
        width: auto;
        padding: 0 20px 20px 0;
    }
    /*====HEADER====*/
    header .left,
    header .right {
        text-align: center;
    }
    /*====NAV====*/
    #mobile-menu {
        display: block;
    }
    header nav {
        display: none;
        background: #c00101;
        float: none;
        text-align: left;
        font-size: 1.2em;
        margin: 0 -15px;
        border: none;
        border-bottom: dotted 1px #222;
        border-radius: 0;
    }
    header nav li {
        float: none;
    }
    header nav li a {
        line-height: 1.4em;
        padding: 0 0 0 1em;
    }
    header nav li:hover ul {
        display: none;
    }
    header nav li ul,
    header nav li.wide ul {
        background: #444;
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        margin: 0 0 0 1em;
        border: none;
        border-left: solid 1px #fff;
        box-shadow: none;
    }
    header nav li li a {
        font-size: 0.8em;
    }
    header nav li li ul {
        width: auto;
        left: auto;
    }
}

@media (max-width: 479px) {
    img {
        float: none !important;
    }
    /*====PRODUCT FEATURES====*/
    body.home .product-feature,
    body.inner .product-feature {
        width: 100%;
        height: auto;
        clear: both;
    }
}

@media print {
    #main > aside {
        display: none;
    }
}

blockquote {
    font-style: italic;
    padding-left: 2em;
    padding-right: 2em;
    margin-top: 1em;
    margin-bottom: 1em;
}

blockquote:before {
    content: '“';
    font-size: 3em;
    position: absolute;
    top: 0;
    left: 0;
}

blockquote:after {
    content: '”';
    font-size: 3em;
    position: absolute;
    bottom: -0.25em;
    right: 0.25em;
}

