/**
 * Responsive styles - Desktop first!
 */


/* Navigation
--------------------------------------------------------------------------- */

@media (max-width: 1020px) {
    
    .logo-wrap {
        padding-left: 5px;
    }
    
    .primary-nav li a {
        font-size: 18px;
    }
    
    .primary-nav li a:before {
        vertical-align: -7px;
    }
    
    .primary-nav .desktop-search-primary-nav {
        vertical-align: 2px;
    }
}

@media (max-width: 915px) {
    
    .primary-nav .desktop-search-primary-nav {
        display: none;
    }
    
    .primary-nav .tablet-search-primary-nav {
        display: inline-block;
    }
    
    .home .primary-nav .tablet-search-primary-nav {
        display: none;
    }
    
    .primary-nav li {
        padding-left: 8px;
        padding-right: 8px;
    }
    
    .primary-nav li:first-child {
        padding-left: 0;
    }
    
    .tablet-search-secondary-nav {
        padding-top: 3px;
        padding-left: 10px;
    }
}

@media (min-width: 916px) {
    
    .tablet-search-secondary-nav {
        display: none !important;
    }
}


@media (max-width: 840px) {
    
    .wishlist-count {
        display: none;
    }
}

/* Swap desktop and mobile nav */
@media (max-width: 767px) {
    
    /* Logo */
    
    .logo, .logo-wrap {
        display: none;
    }
    
    .logo-mobile {
        display: block;
    }
    
    /* Navigation bar */
    
    .navigation-bar {
        display: none;
    }
    
    .logo-mobile {
        margin-left: 5px;
    } 
    
    .mobile-navigation-bar {
        display: block;
        min-height: 45px;
        background: #fff;
    }
    
    .mobile-navigation-bar #nav-toggle {
        margin-left: 5px;
        margin-top: 11px;
        float: left;
        cursor: pointer;
    }
    
    .mobile-navigation-bar .small-search {
        margin-top: 8px;
        margin-right: 5px;
        float: right;
    }
    
    #mobile-nav {
        display: none;
        position: absolute;
        width: 100%;
        min-height: 10000px;
        margin-top: 45px;
        padding-bottom: 20px;
        background: #fff;
        z-index: 500;
        border-top: 1px solid #D1E3EA;
        border-bottom: 1px solid #D1E3EA;
    }
    
    /* Primary nav */
    
    #mobile-nav .primary-nav li {
        display: block;
        padding: 5px 20px;
        border-bottom: 1px solid #D1E3EA;
    }
    
    #mobile-nav .primary-nav li a {
        display: block;
        font-size: 24px;
    }
    
    #mobile-nav .primary-nav li a:after {
        position: absolute;
        right: 0;
        margin-right: 20px;
        content: '\00BB';
        font-size: 18px;
        color: #F79B00;
    }    
    
    #mobile-nav .primary-nav li.entertainment-primary-nav {
        padding-left: 10px;
    }
    
    #mobile-nav .primary-nav li.entertainment-primary-nav a {
        text-transform: uppercase;
        font-size: 20px;
    }
    
    #mobile-nav .primary-nav li.active {
        background: none;
    }
    
    /* Secondary nav */
    
    #mobile-nav .secondary-nav li {
        display: block;
        height: auto;
        margin-left: 0;
    }
    
    #mobile-nav .secondary-nav li a {
        display: block;
        padding-top: 5px;
        padding-bottom: 5px;
        padding-left: 20px;
        font-size: 24px;
        font-weight: 300;
    }
    
    /* Subnav */
    #mobile-nav .secondary-nav li.sub-nav-container select {
        margin-left: 20px;
    }
    
    /* Hide search */
    #mobile-nav .primary-nav li.desktop-search-primary-nav, #mobile-nav .primary-nav li.tablet-search-primary-nav {
        display: none !important;
    }
    
    /* Title */
    #mobile-nav .secondary-nav li:first-child {
        padding-top: 0;
        margin-bottom: 10px;
        border-bottom: 1px solid #D1E3EA;
    }
    
    #mobile-nav .secondary-nav li:first-child a {
        background: #ECF9FF;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    
    #mobile-nav .secondary-nav li:first-child a:before {
        content: "";
        display: inline-block;
        margin-right: 7px;
        vertical-align: -4px;
        background-position: top left;
        background-repeat: no-repeat;
        overflow: hidden;
    }
    
    #mobile-nav .secondary-nav li:first-child a:after {
        position: absolute;
        right: 0;
        margin-right: 20px;
        content: '\00AB  BACK';
        font-size: 18px;
        color: #F79B00;
    }
    
    /* Account nav */
    
    .account-nav .hide-mobile-nav {
        display: none;
    }
    
    #mobile-nav .account-nav {
        padding: 15px 0;
    }
    
    #mobile-nav .account-nav li {
        display: inline-block;
        width: 45%;
    }
    
    #mobile-nav .account-nav li a {
        color: #04579E;
        padding: 5px 20px;
    }
    
    #mobile-nav .account-nav li a:hover {
        background: none;
    }
    
    #mobile-nav .account-nav li#cart {
        display: none;
    }
}

/* Internal Banners
--------------------------------------------------------------------------- */

@media (max-width: 1020px) {
    
    .banner-internal {
        width: 100%;
        height: 100px;
    }
    
    .banner-internal .large-ad div, .banner-internal .large-ad img {
        width: 1200px !important;
        height: 100px !important;
    }
}

@media (max-width: 740px) {
    
    .banner-internal {
        height: 70px;
    }
    
    .banner-internal .large-ad div, .banner-internal .large-ad img {
        width: 840px !important;
        height: 70px !important;
    }
} 

@media (max-width: 440px) {
    
    .banner-internal {
        height: 50px;
    }
    
    .banner-internal .large-ad div, .banner-internal .large-ad img {
        width: 600px !important;
        height: 50px !important;
    }
}


/* Product grids
--------------------------------------------------------------------------- */

@media (max-width: 975px) {

    .product-grid .product .buttons {
        text-align: center;
    }

    .product-grid .product .button {
        width: 100%;
    }

    .product-grid .product .button, .product-grid .product .not-available {
        margin-left: 0;
        margin-right: 0;
        display: block;
        float: none;
    }
}

@media (max-width: 950px) {
    
    .product-grid .product .image-container, .product-grid .product .image-container img {
        height: 150px;
    }
}

@media (max-width: 600px) {

    .product-grid .product {
        width: 45%;
    }
    
    .product-grid .product {
        margin-right: 8%
    }
    
    .product-grid .product:nth-child(2n) {
        margin-right: 0;
    }
    
    .product-grid .product .image-container, .product-grid .product .image-container img {
        height: 200px;
    }
}

@media (max-width: 375px) {

    .product-grid .product {
        width: 45%;
    }
    
    .product-grid .product {
        margin-right: 3%
    }
    
    .product-grid .product:nth-child(2n) {
        margin-right: 0;
    }
    
    .product-grid .product .image-container, .product-grid .product .image-container img {
        height: 150px;
    }
}

/* Used page
--------------------------------------------------------------------------- */

@media (max-width: 950px) {

    .used .breadcrumb .used-heading {
        margin-top: 15px;
        float: left;
        line-height: 1.2em;
    }

    .used .tabs-nav {
        padding: 0 0 0 10px;
    }
}

/* Sidebars
--------------------------------------------------------------------------- */

@media (max-width: 950px) {
    
    .sidebar, .category-sidebar {
        display: none !important;
    }
    
    .right-box {
        width: 100% !important;
        float: none !important;
    }
}


/* Breadcrumbs, View Select, Filters and Pagination
--------------------------------------------------------------------------- */

@media (max-width: 900px) {
    
    .filters {
        float: none;
        width: 100%;
        margin-bottom: 20px;
    }
    
    .view-select, .pagination-top {
        width: 50%;
    }
}

@media (max-width: 425px) {
    
    .view-select, .pagination-top {
        font-size: 18px;
    }
    
    .view-select img, .pagination-top img {
        width: 14px;
        height: 14px;
    }
    
    .view-select a, .pagination-top a {
        font-size: 19px;
    }
}


/* Footer
--------------------------------------------------------------------------- */

@media (max-width: 950px) {

    .get-in-touch .small-search {
        display: block;
        margin-left: 0;
    }
}

@media (max-width: 600px) {
    
    .get-in-touch .social, .get-in-touch .mailing-list {
        display: block;
        width: 100%;
        float: none;
    }
}

/* Tablet portrait and up
--------------------------------------------------------------------------- */

@media (min-width: 768px) {

    /* Header */

    .large-product-image img {
        width: 100px;
        max-width: none;
    }
}

/* Wide desktop only
--------------------------------------------------------------------------- */

@media (min-width: 1021px) {

    .large-product-image img {
        width: 100px;
    }
}

/* Mobile Portrait to tablet landscape
--------------------------------------------------------------------------- */

@media (max-width: 767px) {

    /* Tabs */

    .used .tabs-nav, .single .tab-nav {
        margin: 10px 0 15px 0;
        padding: 0;
        border-bottom: 0;
    }

    .used .tabs-nav li, .single .tab-nav li {
        display: block;
        margin: 0;
        padding: 0;
        border-radius: 0;
        float: none;
    }

    .used .tabs-nav li a, .single .tab-nav li a {
        display: block;
        width: auto;
        margin: 0;
        padding: 10px;
        font-size: 18px;
        text-align: center;
        border-radius: 0;
    }

    .used .tabs-nav li:hover, .single .tab-nav li:hover a {
        background: #1575bd;
    }

    .used .tabs-nav li:first-child, .single .tab-nav li:first-child a {
        border-radius: 5px 5px 0 0;
    }

    .used .tabs-nav li:last-child, .single .tab-nav li:last-child a {
        border-radius: 0 0 5px 5px;
    }

    /* Content */

    .box-top h2, .box-top a {
        float: none;
    }
    
    .box-top a {
        display: block;
        margin-top: 20px;
    }

    .extra-info .pod {
        width: 100%;
        margin-bottom: 20px;
    }

    .extra-info .pod:last-child {
        margin-bottom: 0;
    }

    .extra-info .pod ul {
        border-bottom: 0;
        min-height: 0;
    }

    .store-locator-ads img {
        height: 60px;
    }

    .shopping-cart .signupMsg, .shopCart .signupMsg {
        margin: 0 !important;
    }

    .select-card span {
        font-size: 18px !important;
    }

    .wanna-win iframe {
        min-height: 700px;
    }
    
    /* Home */
    
    .hero-container, .hero-slide {
        height: 250px;
    }
    
    .hero-slider, .banner-internal {
        margin-top: 0;
    }
    
    .hero-content {
        padding-top: 40px;
    }
    
    .hero-content h1 {
        font-size: 40px;
    }
    
    .hero-search {
        display: none;
    }

    /* Single Product */

    .single-product .album-art, .single-product .product-details {
        display: block;
        width: 100% !important;
    }

    .single-product .album-art {
        text-align: center;
    }

    .single-product .album-art .modal-link {
        margin-bottom: 20px;
        margin-left: auto;
        margin-right: auto;
    }

    .single-product .product-details .product-heading {
        text-align: center;
        margin-top: 15px;
    }

    .single-product .album-art {
        background: none !important;
    }

    .single-product .tee-description {
        width: 100%;
    }

    .single-product .trailer-image {
        display: none;
    }

    /* Product lists */

    .table-container .product-price {
        display: none;
    }

    .table-container .product-price-mobile {
        display: table-cell;
    }

    .table-container td.product-price-mobile {
        text-align: left;
        font-family: 'Open Sans Condensed';
        font-weight: bold;
        font-size: 14px;
    }

    .table-container td.product-price-mobile span {
        font-weight: normal;
    }

    .table-container .product-quantity .count {
        width: 20px;
    }

    #info-popup {
        display: none !important;
    }

    /* Cart */

    .shopping-cart .cart-shipping .cols {
        width: 0% !important;
    }

    .shopping-cart .cart-shipping .cols.right {
        float: right;
        width: 65% !important;
    }

    /* Checkout */

    .shopCart .login, .shopCart .registration {
        width: 39%;
    }

    .shopCart .registration .cols {
        float: none;
        width: 100%;
    }

    .placeOrder .order {
        float: none;
        width: 100%;
    }

    .placeOrder .cartSummary {
        float: none;
        width: 90%;
    }

    .paymentMethod {
        margin: 0;
    }

    .shippingAddress {
        margin: 0;
    }

    .shippingAddress .cols {
        width: 45%;
    }

    .shippingAddress form {
        float: none !important;
        margin-top: 20px;
    }

    .shippingAddress input[type='submit'] {
        float: none !important;
    }

    /* Utilities */

    .hide-tablet {
        display: block;
    }

    .hide-mobile {
        display: none !important;
    }
}

/* Mobile portrait only
--------------------------------------------------------------------------- */

@media (max-width: 479px) {

    .table-container {
        margin-left: -10px;
        margin-right: -10px;
        overflow: hidden;
    }

    .table-container td {
        word-wrap: break-word;
    }

    .table-container .product-image, .table-container .product-artist, .table-container .product-title, .table-container .product-type {
        display: none;
    }

    .table-container.tees-list .product-image, .table-container.tees-list .product-title { /* Override for tees lists */
        display: table-cell;
    }

    .table-container .buy-new, .table-container .buy-used {
        width: 115px !important;
    }

    .table-container .product-details-mobile {
        display: table-cell;
        width: 100% !important;
    }

    .table-container td.product-details-mobile {
        font-family: 'Open Sans Condensed';
        font-size: 14px;
        font-weight: bold;
    }

    .table-container td.product-details-mobile a {
        display: block;
        margin-bottom: 5px;
        font-family: 'Open Sans Condensed';
        font-size: 14px;
        font-weight: bold;
        color: #0076c2;
        text-transform: uppercase;
    }

    .table-container td.product-details-mobile img {
        width: auto;
        height: auto;
        max-width: none;
    }

    .table-container td.product-details-mobile p {
        line-height: 2em;
    }

    .table-container td {
        vertical-align: top;
    }

    .table-container td.grey.button {
        width: auto;
    }

    /* Recommendations */

    .recommendations-box .viewport li {
        width: 27%;
    }

    /* Single Product */

    .single-product .recommendations-box .viewport li {
        width: 25%;
    }

    .single-product .jp-audio {
        width: 100%;
        overflow: hidden;
    }

    /* Cart */

    .shopping-cart .top-cart h1, .shopping-cart .top-cart .continue-shopping, .shopping-cart .top-cart .checkout {
        float: none;
    }

    .shopping-cart .buy.items h3 {
        margin-top: 20px;
    }

    .shopping-cart .cart-shipping .cols.right {
        width: 100% !important;
    }

    .shopping-cart .shipping-label, .shopping-cart .promo-label {
        float: none !important;
    }

    /* Login / Registration */

    .login-page .pod {
        width: 100%;
    }

    .login-page .pod:first-child {
        border-bottom: 1px solid #ccc;
    }

    /* Checkout */

    .cartSteps {
        width: 280px;
    }

    .cartSteps li.bar {
        width: 33%;
    }

    .shopCart .login, .shopCart .registration {
        float: none;
        width: 100%;
        margin-left: 0;
        padding-left: 0;
    }
    
    .shopCart .login input, .shopCart .registration input {
        width: 95%;
    }

    .shopCart .shipAddress {
        width: 100%;
    }

    .placeOrder .order .col3 .cols {
        float: none;
        width: 100%;
    }

    .placeOrder .order .col2 .cols {
        float: none;
        width: 70%;
    }

    .placeOrder .cartSummary {
        width: 85%;
    }

    .paymentMethod .form {
        padding: 10px;
    }

    .paymentMethod .right {
        float: none;
        text-align: center;
    }

    .shippingAddress {
        margin: 0;
    }

    .paymentMethod .cols {
        float: none;
        width: 100%;
        margin-bottom: 10px;
    }

    /* Content */

    .select-card li {
        width: 100%;
        margin-bottom: 15px;
        text-align: center;
    }

    .select-card span {
        font-size
    }
        
    .single-product iframe {
        width: 290px !important;
    }

    /* Footer */

    .cart-footer-mobile {
        display: block;
    }

    /* Utilities */

    .hide-mobile-portrait {
        display: none !important;
    }
}
