﻿@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/quicksand/Quicksand.ttf') format('truetype'), url('../fonts/quicksand/Quicksand.woff2') format('woff2'), url('../fonts/quicksand/Quicksand.woff') format('woff');
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto/Roboto.ttf') format('truetype');
}

html {
    font-size: 16px;
}

@media screen and (min-width: 320px) {
    html {
        font-size: calc(16px + 6 * ((100vw - 320px) / 680));
    }
}

@media screen and (min-width: 1200px) {
    html {
        font-size: 24px;
    }
}

body {
    font-size: 16px;
    font-family: 'Quicksand', sans-serif;
    width: 100%;
    color: #000;
    background-color: #fff;
    line-height: 1;
}

a {
    font-size: .8rem;
    color: #000;
    outline: none;
    text-decoration: none;
}

    a:hover {
        color: #DE1B2F !important;
        -webkit-transition: color .5s ease-in-out;
        -moz-transition: color .5s ease-in-out;
        -o-transition: color .5s ease-in-out;
        transition: color .5s ease-in-out;
    }

    a:active,
    a:visited,
    a:focus {
        color: #000;
    }

p,
li,
.anchor {
    font-family: Roboto, sans-serif;
    font-size: .8rem;
    line-height: 1.2rem;
    font-weight: 300;
    letter-spacing: .25px;
    color: #000;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}

ol, ul {
    list-style: none;
}

    ol,
    ul.nav {
        padding-inline-start: 4px;
    }

address {
    font-style: normal;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after,
    q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

label {
    margin: 0 0 4px 0;
}

textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox {
    -webkit-appearance: none;
    border-radius: 0;
}

input,
textarea {
    padding: 4px;
    width: 250px;
    height: 20px;
    border: 1px solid #000;
}

textarea {
    height: 70px;
}

[type="checkbox"] {
    padding: 3px;
    width: auto !important;
}

/*[type="file"] {
    height: 25px;
    padding: 4px 0 8px 0;
    border: none;
}*/

button[type="submit"] {
    font-size: .8rem;
    font-weight: 500;
    -webkit-appearance: none;
    border-radius: 0;
    padding: 8px 16px;
    border: 1px solid #000;
    background-color: #fff;
    cursor: pointer;
}

    button[type="submit"]:hover {
        color: #fff;
        background-color: #000;
    }

nav button {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background-color: #fff !important;
}

/********************************************************** Classes - Site Wide */
.five-hundred {
    font-weight: 600;
}

.red {
    color: red;
}

.active {
    color: #FFE266 !important;
}

a.active-underline {
    color: #DE1B2F;
}

/********************************************************** h1-h6 */
h1, h2, h3, h4, h5, h6 {
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}

h1 {
    font-size: 2.25rem;
    letter-spacing: -.05rem;
    font-weight: 400;
    line-height: .85;
}

h2 {
    /*font-size: .6rem;*/
    font-size: 1.25rem;
    font-weight: 500;
    color: #000;
}

h3 {
    font-size: 1.25rem;
    line-height: 1.4rem;
}

h4 {
    font-size: 1.1rem;
    line-height: 1.6rem;
    font-weight: 500;
}

h5 {
    font-size: .8rem;
    line-height: 1.3rem;
    font-weight: 400;
    color: #272b2e;
}

h6 {
    font-size: 1.4rem;
    line-height: 1.5rem;
}

@media only screen and (min-width: 769px) {
    h1 {
        font-size: 2.8rem;
    }
}

/********************************************************** FORMS */
form {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

    form div {
        flex-basis: 100%;
        padding: .5% 0 .5% 2px;
    }

        form div label {
            font-size: .75rem;
        }

        form div input,
        form div textarea,
        form div img {
            margin: .5% 0;
        }

        form div [type="file"] {
            padding: 4px 0 8px 0;
            border: none;
        }

        form div img {
            max-width: 100px;
        }

@media only screen and (min-width: 900px) {
    form div label {
        font-size: .65rem;
    }
}

/********************************************************** HEADER/NAVBAR - Logo/Title & Navigation */
header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: auto;
}
    /**************************** logo */
    header img {
        position: fixed;
        top: .4%;
        left: 2%;
        height: 3.5rem;
        z-index: 1000;
    }

        header img:hover {
            -webkit-transition: opacity .5s ease-in-out;
            -moz-transition: opacity .5s ease-in-out;
            -o-transition: opacity .5s ease-in-out;
            transition: opacity .5s ease-in-out;
            opacity: .92;
        }

    /* on hamburger click  - background left & right slide in / anchors fade in, top to bottom */
    header div .nav-wrap {
        position: fixed;
        top: 0;
        left: 0;
        visibility: hidden;
        transition: opacity .35s, visibility .35s, width .35s;
        z-index: 100;
        display: none;
        opacity: 0;
    }
        /* open class is added by JS on hamburger click*/
        header div .nav-wrap.open:before {
            position: absolute;
            top: 0;
            left: -55%;
            content: '';
            background: #000;
            width: 50%;
            height: 100%;
            transition: left .35s ease;
        }

        header div .nav-wrap.open:after {
            content: '';
            background: #000;
            right: -55%;
            top: 0;
            width: 50%;
            height: 100%;
            position: absolute;
            transition: right .35s ease;
        }

        header div .nav-wrap.open {
            visibility: visible;
            overflow: hidden;
            height: 100%;
            width: 100%;
            display: inline;
            opacity: 1;
        }

            /* anchor fade-in animation */
            header div .nav-wrap.open a {
                -webkit-animation: fadeInRight .5s ease forwards;
                animation: fadeInRight .5s ease forwards;
                -webkit-animation-delay: .35s;
                animation-delay: .35s;
                opacity: 0;
            }

                header div .nav-wrap.open a:nth-of-type(2) {
                    -webkit-animation-delay: .45s;
                    animation-delay: .45s;
                }

                header div .nav-wrap.open a:nth-of-type(3) {
                    -webkit-animation-delay: .55s;
                    animation-delay: .55s;
                }

                header div .nav-wrap.open a:nth-of-type(4) {
                    -webkit-animation-delay: .65s;
                    animation-delay: .65s;
                }

                header div .nav-wrap.open a:nth-of-type(5) {
                    -webkit-animation-delay: .75s;
                    animation-delay: .75s;
                }

                header div .nav-wrap.open a:nth-of-type(6) {
                    -webkit-animation-delay: .85s;
                    animation-delay: .85s;
                }

            header div .nav-wrap.open:before {
                left: 0;
            }

            header div .nav-wrap.open:after {
                right: 0;
            }

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        /*left: 20%;*/
    }

    100% {
        opacity: 1;
        /*left: 0;*/
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        /*left: 20%;*/
    }

    100% {
        opacity: 1;
        /*left: 0;*/
    }
}

header nav.nav-main {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    height: 85vh;
}

    header nav.nav-main div {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        position: relative;
        z-index: 100;
        height: 70vh;
    }

    header nav.nav-main a {
        flex-basis: 100%;
        display: flex;
        justify-content: center;
        color: #fff;
        font-size: 36px;
    }

        header nav.nav-main a:hover,
        header nav.nav-main a.active {
            color: #FFE266 !important;
        }

header nav.nav-action {
    background-color: transparent;
}

@media only screen and (min-width: 900px) {
    header img {
        height: 4.5rem;
    }

    header div .nav-wrap.open:before,
    header div .nav-wrap.open:after {
        position: unset;
        background-color: #000;
    }

    header div .nav-wrap {
        position: unset;
        visibility: visible;
        transition: unset;
        display: block;
        opacity: 1;
    }

    header nav.nav-main {
        display: flex;
        flex-wrap: wrap;
        align-content: unset;
        background-color: #262626;
    }

    header nav.nav-main,
    header nav.nav-action {
        height: 40px;
        justify-content: flex-end;
    }

        header nav.nav-main div {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            position: unset;
            height: auto;
            width: auto;
        }

            header nav.nav-main div a {
                flex-basis: auto;
                font-size: .75rem;
                padding: 0 24px 0 0;
            }

    header nav.nav-action {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        background-color: rgba(255, 255, 255, .98);
    }

        header nav.nav-action a,
        header nav.nav-action i,
        header nav.nav-action form button {
            color: #000;
        }

        header nav.nav-action a,
        header nav.nav-action form,
        header nav.nav-action form button {
            flex-basis: auto;
            font-size: .7rem;
            padding: 0 32px 0 0;
        }

            header nav.nav-action a,
            header nav.nav-action form button {
                font-weight: 400;
            }

                header nav.nav-action a:hover,
                header nav.nav-action form button:hover {
                    color: #DE1B2F;
                }

                header nav.nav-action form button:hover {
                    cursor: pointer;
                }

                header nav.nav-action a i {
                    font-size: 22px;
                }

                    header nav.nav-action a i:hover,
                    header nav.nav-action form button:hover {
                        color: #DE1B2F;
                        -webkit-transition: color .5s ease-in-out;
                        -moz-transition: color .5s ease-in-out;
                        -o-transition: color .5s ease-in-out;
                        transition: color .5s ease-in-out;
                    }
}

/* mobile menu button - js adds/removes cheese class for animation */
header .hamburger {
    position: fixed;
    top: 3.5%;
    right: 5%;
    height: 27px;
    width: 35px;
    cursor: pointer;
    z-index: 100;
    transition: opacity .25s ease;
}

    header .hamburger.cheese {
        color: #000;
    }

        header .hamburger.cheese .top {
            -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
            transform: translateY(10px) translateX(0) rotate(45deg);
            background: #fff;
        }

        header .hamburger.cheese .middle {
            opacity: 0;
            background: #fff;
        }

        header .hamburger.cheese .bottom {
            -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
            transform: translateY(-10px) translateX(0) rotate(-45deg);
            background: #fff;
        }

    header .hamburger span {
        background-color: #333;
        border: none;
        height: 5px;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        transition: all .35s ease;
        cursor: pointer;
    }

        header .hamburger span:nth-of-type(2) {
            top: 10px;
        }

        header .hamburger span:nth-of-type(3) {
            top: 20px;
        }

    header .hamburger:visited span {
        background-color: #000;
    }

/* on hamburger click - hide/show scroll bar - no scroll when mobile menu open*/
body.mobile-menu-opened {
    overflow: hidden;
}

@media only screen and (min-width: 900px) {
    body.mobile-menu-opened {
        overflow: visible;
    }

    /*.mobile,*/
    .hamburger {
        display: none;
    }
}

/********************************************************** Site Wrap */
main {
    margin: 0;
    padding: 5rem 0 0 0;
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.gutter {
    flex-basis: 90%;
}

@media only screen and (min-width: 769px) {
    /*  main {
        padding: 4rem 0 0 0;
    }*/

    .gutter {
        flex-basis: 80%;
    }
}

@media only screen and (min-width: 1200px) {
    main {
        padding: 3.5rem 0 0 0;
    }

    .gutter {
        flex-basis: 70%;
    }
}

@media only screen and (min-width: 1500px) {
    .gutter {
        flex-basis: 60%;
    }
}

@media only screen and (min-width: 2400px) {
    .gutter {
        flex-basis: 50%;
    }
}

.wrap {
    margin: 2vh auto 0 auto;
    width: 98%;
    height: auto;
}

/********************************************************** Page Header */
#pageHeader {
    width: 100% !important;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 0 3% 0;
}

    #pageHeader h1 {
        flex-basis: 100%;
        margin: 0 0 0 -.35rem;
    }

    #pageHeader h2 {
        font-size: .55rem;
        /*font-weight: 600;*/
        text-transform: uppercase;
    }

    #pageHeader div {
        flex-basis: 50%;
        display: flex;
        justify-content: space-between;
        align-items: baseline;
    }

        #pageHeader div:nth-child(2) {
            flex-basis: 50%;
            display: flex;
            justify-content: flex-end;
        }

        #pageHeader div a {
            padding: 0 0 0 4%;
            font-size: .85rem;
        }

@media only screen and (min-width: 768px) {
    #pageHeader div a {
        padding: 0 0 0 4%;
        font-size: .75rem;
    }
}
/*********************************************************** Index/Home Page */
.home-product {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

    .home-product a article {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: baseline;
    }

        .home-product a article div {
            flex-basis: 50%;
            align-items: baseline;
        }

            .home-product a article div:last-child {
                flex-basis: 50%;
                display: flex;
                justify-content: flex-end;
            }

            .home-product a article div h1 {
                font-size: 2rem;
            }

            .home-product a article div h2 {
                font-size: .55rem;
                text-transform: uppercase;
                line-height: 13.2px;
            }

    .home-product a {
        padding: 0 0 8vh 0;
        height: auto;
        flex-basis: 100%;
    }

    .home-product img {
        max-width: 100%;
    }

.shine:hover {
    -webkit-mask-image: linear-gradient(-75deg, rgba(0,0,0,.8) 30%, #000 50%, rgba(0,0,0,.8) 70%);
    -webkit-mask-size: 200%;
    animation: shine 2s forwards;
    opacity: .9;
}

@-webkit-keyframes shine {
    from {
        -webkit-mask-position: 150;
    }

    to {
        -webkit-mask-position: -150%;
    }
}

.home-product a:hover h1,
.home-product a:hover h2 {
    color: #000;
    animation: none;
}

.home-product a article {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.home-product a div {
    margin: 0 auto;
    width: 96%;
}

    .home-product a div img {
        padding: 3vh 0 0 0;
        width: 100%;
    }

@media only screen and (min-width: 1080px) {
    .home-product a article div h1 {
        font-size: 2.5rem;
    }

    .home-product a div {
        width: 82%;
    }
}

#homeReviews {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.home-review {
    flex-basis: 80%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
}

    .home-review a {
        margin: 6vh 0;
        flex-basis: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

        .home-review a div {
            flex-basis: 100%;
            display: flex;
            flex-wrap: wrap;
            align-content: flex-start;
        }

        .home-review a img {
            width: 100%;
        }

    .home-review h4 {
        margin: .5rem 0;
        font-size: 1rem;
        line-height: 1.2rem;
        max-width: 80%;
    }

@media only screen and (min-width: 600px) {
    .home-review a {
        flex-basis: 45%;
    }

    .home-review h4 {
        font-size: 1.1rem;
        line-height: 1.3rem;
        max-width: 65%;
    }

    home-review a div {
        flex-basis: 80%;
    }
}
/********************************************************** Products Landing Page */
#products {
    padding: 0 0 10vh 0;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: center;
    justify-content: space-around;
}

.product {
    height: auto;
    padding: 2% 0;
    display: flex;
    flex-wrap: wrap;
    flex-basis: 96%;
}

    .product div {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        flex-basis: 100%;
    }

        .product div:nth-child(5) {
            justify-content: flex-start;
        }

        .product div h2 {
            font-size: 1.3rem;
            font-weight: normal;
        }

        .product div h3 {
            font-size: .5rem;
            font-weight: normal;
        }

    .product img {
        width: 100%;
    }

@media only screen and (min-width: 1080px) {
    .product {
        flex-basis: 42%;
    }
}

/**** Section Title Dash Shrink ****/
.products_titles div h1.header_title_dash {
    height: auto;
    letter-spacing: -.1rem;
    font-size: .6rem;
}

/********************************************** PS6 Product Page */
#ps6Hero {
    margin: 0 auto;
    padding: 0 0 30vh 0;
    width: 100%;
    height: auto;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

    #ps6Hero p {
        padding: .75% .5%;
    }

    #ps6Hero span {
        color: red;
    }

    #ps6Hero a {
        font-family: 'Open Sans Condensed', sans-serif;
    }

        #ps6Hero a:hover {
            text-decoration: underline;
        }

/*********************** PS6 Title/Information/Price */
.ps6-info {
    order: 1;
    flex-basis: 100%;
    margin: 1rem 0 1rem 0;
}

    .ps6-info div {
        padding: .5rem 0;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }

    .ps6-info h3 {
        max-width: 300px;
        font-weight: 400;
        padding: 0 0 .5rem 0;
    }

    .ps6-info h5 {
        padding: 1rem 0 0 0;
    }

    .ps6-info a {
        font-family: inherit;
        font-size: inherit;
    }

/*********************** PS6 Faceplate */
.ps6-faceplate {
    order: 2;
    flex-basis: 100%;
    margin: 1rem 0 1rem 0;
}

    .ps6-faceplate div {
        display: flex;
        justify-content: center;
        align-content: center;
    }

    .ps6-faceplate img {
        max-width: 125px;
    }

/*********************** PS6 Controls */
.ps6-control-info {
    padding: 8% 0 0 0;
    order: 3;
    flex-basis: 100%;
}

    .ps6-control-info div {
        padding: 0 0 4% 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .ps6-control-info h4 {
        margin: 0 0 2% 0;
        padding: 0 0 2% 0;
        font-weight: 500;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

.product_image {
    height: auto;
}

/*********************** PS6 Product Page Media Queries */

@media only screen and (min-width: 767px) {
    .ps6-info {
        flex-basis: 60%;
    }

    .ps6-faceplate {
        flex-basis: 40%;
    }
}

@media only screen and (min-width: 1900px) {
    #ps6Hero {
        align-items: center;
    }

    .ps6-info {
        flex-basis: 35%;
        margin: 0;
        align-content: center;
    }

    .ps6-faceplate {
        flex-basis: 30%;
        margin: 0;
    }

        .ps6-faceplate img {
            max-width: 200px;
        }

    .ps6-control-info {
        flex-basis: 35%;
        padding: 0;
    }
}

/**************************** Product Page - PS6 Rack & Power Supply Section ****/
#ps6RackPSU {
    padding: 30vh 0;
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}

.ps6-rackpsu-pix {
    flex-basis: 100%;
}

    .ps6-rackpsu-pix img {
        margin: 2vh 0 0 0;
        width: 100%;
    }

.ps6-rackpsu-info {
    padding: 1vh 0 0 0;
    flex-basis: 94%;
}

    .ps6-rackpsu-info h3 {
        padding: 0% 0 2% 0;
        font-weight: 400;
    }

    .ps6-rackpsu-info p {
        margin: 1% 0 4% 0;
        padding: 2% 0;
        border-top: 1px solid rgba(0, 0, 0, 0.1);
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        max-width: 450px;
    }

@media only screen and (min-width: 960px) {
    .ps6-rackpsu-pix {
        flex-basis: 66%;
    }

    .ps6-rackpsu-info {
        flex-basis: 30%;
    }

        .ps6-rackpsu-info h3 {
            padding: 3% 0;
        }

        .ps6-rackpsu-info p {
            padding: 4% 0;
        }
}

@media only screen and (min-width: 1200px) {
    .ps6-rackpsu-pix {
        flex-basis: 64%;
    }

    .ps6-rackpsu-info {
        flex-basis: 32%;
    }
}

/**************************** Product Page - Transformers */
#product_transformers {
    padding: 0 0 0 0;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

    #product_transformers article {
        padding: 0 0 8vh 0;
        flex-basis: 96%;
        height: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: flex-start;
        max-width: 500px;
    }

        #product_transformers article h6 {
            flex-basis: 100%;
            font-weight: 400;
        }

            #product_transformers article h6 span {
                font-weight: 600;
                line-height: 2rem;
            }

        #product_transformers article p {
            padding: 1.5vh 0 0 0;
            flex-basis: 100%;
            border-top: 1px solid rgba(0, 0, 0, 0.1);
        }

        #product_transformers article div {
            padding: 3vh 0 2vh 0;
            flex-basis: 100%;
        }

            #product_transformers article div img {
                width: 100%;
                max-width: 125px;
                align-self: center;
            }

        #product_transformers article h5,
        #product_transformers article h6,
        #product_transformers article p {
            padding-left: .35rem;
        }

@media only screen and (min-width: 540px) {
    #product_transformers {
        justify-content: space-between;
    }
}

@media only screen and (min-width: 1080px) {
    #product_transformers article {
        flex-basis: 48%;
    }
}

/*************************** Product Page - Specifications */
#productSpecifications {
    padding: 30vh 0 20vh 0;
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

    #productSpecifications div {
        padding: 3vh 0 2vh 0;
        flex-basis: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: flex-start;
    }

        #productSpecifications div h3 {
            margin: 0 0 .75rem 0;
            padding: 0 0 .75rem 0;
            border-bottom: 1px solid rgba(0, 0, 0, 0.1);
            flex-basis: 100%;
            font-size: 1.25rem;
            font-weight: 400;
            line-height: unset;
        }

        #productSpecifications div ul {
            flex-basis: 96%;
            list-style: disc;
            list-style-position: inside;
            font-size: .70rem;
            letter-spacing: 1px;
            line-height: 1rem;
            margin-block-start: unset;
            margin-block-end: unset;
            margin-inline-start: unset;
            margin-inline-end: 0px;
            padding-inline-start: 25px;
        }

            #productSpecifications div ul li {
                list-style-position: inside;
                text-indent: -1rem;
            }


/********************************************************** CS-286s/70s Product Pages */
#singleHero {
    padding: 0 0 30vh 0;
    width: 98%;
    height: auto;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    align-content: space-between;
    align-items: center;
}

    #singleHero span {
        color: red;
    }

    #singleHero a:hover {
        text-decoration: underline;
    }

.single-faceplate {
    padding: 2% 0 0 0;
    order: 1;
    flex-basis: 100%;
}

    .single-faceplate div img {
        width: 100%;
    }

.single-info {
    padding: 3% 0 0 0;
    order: 2;
    flex-basis: 100%;
    width: 96%;
}

    .single-info div {
        max-width: 760px;
    }

    .single-info h3 {
        max-width: 300px;
        font-weight: 400;
        padding: 0 0 1% 0;
    }

    .single-info div p {
        padding: 1rem 0 !important;
        border-top: 1px solid rgba(0, 0, 0, 0.1);
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .single-info h5 {
        padding: 1.5% 0 0 0;
    }

/********************************************************** Phantom Power */
.phantom-faceplate {
    padding: 0 8%;
    order: 1;
    flex-basis: auto;
}

    .phantom-faceplate div img {
        width: 100%;
    }

/********************************************************** Dealers */
#dealers {
    margin: 0 0 20vh 0;
    height: auto;
    width: 100%;
    display: grid;
    grid-template-columns: 100%;
}

    #dealers div {
        margin: 0 0 4vh 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: flex-start;
    }

    #dealers h2 {
        flex-basis: 100%;
        margin: 0 0 10px 0;
    }

    #dealers a {
        flex-basis: 100%;
        margin: 0 0 .35rem .1rem;
        width: auto;
    }

@media only screen and (min-width: 900px) {
    #dealers {
        grid-template-columns: 33% 33% 33%;
        gap: .333333%;
    }

        #dealers a {
            font-size: .85rem;
        }
}

@media only screen and (min-width: 1600px) {
    #dealers {
        grid-template-columns: 24% 24% 24% 24%;
        gap: 1%;
    }

        #dealers a {
            font-size: 1rem;
        }

    .user p {
        font-size: .6rem;
    }
}

/********************************************************** Users ****/
#users {
    padding: 0 0 20vh 0;
    width: 100%;
    display: grid;
    grid-template-columns: 100%;
    gap: 0 .5rem;
}

#user {
    margin: 1vh 0 2vh 0;
}

.user {
    padding: 0 0 4% 0;
}

    .user div img {
        margin: 0 0 .25rem 0;
        width: 100%;
    }

    .user h2 {
        font-size: 1rem;
    }

    .user p {
        margin: .25rem 0 0 0;
        padding: 0 12px 0 0;
        font-size: .75rem;
        line-height: .85rem;
    }


@media only screen and (min-width: 620px) {
    #users {
        grid-template-columns: 50% 50%;
    }

    .user p {
        font-size: .6rem;
    }
}

@media only screen and (min-width: 1080px) {
    #users {
        grid-template-columns: 33.3333% 33.3333% 33.3333%;
    }

    .user p {
        font-size: .5rem;
    }
}

/********************************************************** Support ****/
#support {
    padding: 0 .25% 20vh .25%;
    height: auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

    #support section {
        padding: 2% 0;
        height: auto;
    }

        #support section div {
            width: 100%;
        }

    #support h2 {
        margin: 0 0 .65rem 0;
    }

    #support h5 {
        margin: .65rem 0 0 0;
    }

    #support p {
        padding: .75% .5%;
    }

.warranty-repair {
    order: 1;
    flex-basis: 98%;
}

.warranty-one-year {
    order: 2;
    flex-basis: 98%;
}

.warranty-service {
    order: 3;
    flex-basis: 98%;
}

.product-manual {
    order: 4;
    flex-basis: 98%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

    .product-manual .pdf {
        flex-basis: 100%;
    }

        .product-manual .pdf:last-child {
            margin: 1rem 0 0 0;
        }

        .product-manual .pdf div {
            margin: .5rem 0 0 0;
        }

@media only screen and (min-width: 720px) {
    .product-manual .pdf {
        flex-basis: 50%;
    }

        .product-manual .pdf:last-child {
            margin: 0;
        }
}

/********************************************************** Media | Videos, Audio, Etc. ****/
#media {
    margin: 0 0 20vh 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
}

    #media form {
        flex-basis: 100%;
    }

.media-wrap {
    overflow: hidden;
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    margin-top: 25px;
    flex-basis: 100%;
}

    .media-wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none;
    }

    .media-wrap .edit {
        width: 100%;
        height: 18%;
        position: absolute;
        bottom: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.85);
        z-index: 99;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

        .media-wrap .edit a {
            padding-left: .5rem;
            color: #fff;
        }

            .media-wrap .edit a:hover {
                color: #FFE266 !important;
            }

.media-edit input {
    width: 100%;
    height: auto;
}

@media only screen and (min-width: 900px) {
    .media-edit iframe {
        width: 45%;
        height: 45%;
    }
}

@media only screen and (min-width: 1020px) {
    .media-wrap {
        flex-basis: 48%;
        padding-bottom: 23.125%;
    }

        .media-wrap iframe {
            width: 100%;
            height: 100%;
        }
}

@media only screen and (min-width: 1540px) {
    .media-wrap {
        flex-basis: 32.3333%;
        padding: 0 0 17.6666% 0;
    }

        .media-wrap iframe {
            width: 100%;
            height: 100%;
        }
}

/********************************************************** Footer ****/
footer {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
}

    footer section {
        margin: 0 0 24px 0;
    }

        footer section a {
            font-size: 1.6rem;
        }

        footer section address {
            font-size: 1.35rem;
        }

        footer section a i {
            font-size: 1.65rem;
            line-height: 2rem;
        }

        footer section:nth-child(3) a {
            margin: 0 24px 0 0;
        }

    footer p {
        margin: 0;
        font-size: .55rem;
        font-family: 'Quicksand', sans-serif;
    }

@media only screen and (min-width: 769px) {
}

/********************************************************** Images ****/
#images {
    flex-basis: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

    #images .header {
        flex-basis: 100%;
        display: flex;
        justify-content: space-between;
    }

        #images .header div {
            flex-basis: 15%;
        }

    #images article {
        flex-basis: 100%;
        margin: 16px 0 0 0;
        display: flex;
        justify-content: space-between;
    }

        #images article div {
            flex-basis: 15%;
            font-size: .5rem;
            line-height: .65rem;
        }

            #images article div span {
                font-weight: 600;
            }

    #images div img {
        width: 100%;
        max-width: 100px;
    }

        #images div img:hover {
            opacity: .75;
        }

#image {
    flex-basis: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

    #image section {
        flex-basis: 100%;
    }

        #image section img {
            width: 100%;
            max-width: 250px;
        }

        #image section div {
            margin: 10px 0 20px 0;
        }

            #image section div span {
                font-weight: 600;
            }

@media only screen and (min-width: 769px) {
    #image section:first-child {
        flex-basis: 40%;
    }

    #image section:last-child {
        flex-basis: 56%;
    }

    #image section img {
        max-width: unset;
    }
}

/********************************************************** Image Slider ****/
.slides {
    display: none
}

.slideshow-container img {
    vertical-align: middle;
    width: 100%;
}

.slideshow-container {
    position: relative;
}

.prev, .next {
    cursor: pointer;
    position: absolute;
    bottom: -80px;
    width: auto;
    padding: 16px;
    margin-top: -22px;
    color: rgba(0,0,0,0.25);
    font-weight: bold;
    font-size: 36px;
    transition: 0.6s ease-in-out;
    user-select: none;
}

.prev {
    left: -2%;
    border-radius: 0 3px 3px 0;
}

.next {
    right: -2%;
    border-radius: 3px 0 0 3px;
}

    .prev:hover, .next:hover {
        color: rgba(0,0,0,.75) !important;
    }

.fade {
    animation-name: fade;
    animation-duration: 1s;
}

@keyframes fade {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@media only screen and (min-width: 769px) {
    .prev, .next {
        bottom: 0px;
        font-size: 48px;
    }

    .prev {
        left: -8%;
    }

    .next {
        right: -8%;
    }
}

@media only screen and (min-width: 1080px) {
    .prev, .next {
        top: 60%;
        bottom: unset;
    }

    .prev {
        left: -12%;
    }

    .next {
        right: -12%;
    }
}

/*Account*/

#accountNav {
    margin: .5rem 0;
}

    #accountNav a {
        margin: 0 2% 0 0;
    }
