/* Landscape and big portrait devices - general styling */
@media only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (in-resolution: 72dpi)
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (min-resolution: 1dppx)
and (max-width: 1024px) 
and (orientation: landscape),
only screen
and (max-width: 1024px) 
and (orientation: landscape),
only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 1024px)
and (orientation: portrait),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 1024px)
and (orientation: portrait),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 1024px)
and (orientation: portrait),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 1024px)
and (orientation: portrait),
only screen 
and (in-resolution: 72dpi)
and (max-width: 1024px)
and (orientation: portrait),
only screen 
and (min-resolution: 1dppx)
and (max-width: 1024px)
and (orientation: portrait),
only screen
and (max-width: 1024px)
and (orientation: portrait) {
    #container, .container {
        width: 98%;
        padding: 3px 1%;
    }

    img {
        max-width: 100%;
        height: auto;
    }

    .warehouse_image img {
        max-width: 99%;
        height: auto;
    }

    #header ul.nav1 {
        width: 100%;
    }
    
    #header ul.nav1 li {
        width: 12%;
    }
    
    #header ul.nav1 li:last-child {
        width: 40%;
    }

    #header ul.nav1 li a {
        padding: 0;
        width: 100%;
        display: block;
        text-align: center;
    }

    #header ul.nav1 li span.search {
        display: inline-block;
        width: 88%;
        width: calc(100% - 50px);
        padding: 1px 0 2px 25px;
    }

    #header ul.nav1 li span.search input {
        width: 90%;
        width: calc(100% - 31px);
    }

    #logo {
        width: 62%;
    }

    #logo img {
        width: 66.8%;
    }

    #blog-button {
        position: absolute;
        top: 22%;
        left: 48%;
        width: 12%;
    }

    #languages {
        position: absolute;
        top: 10%;
        left: 48%;
        width: 12%;
        margin-right: 0;
    }

    #languages a:first-child {
        margin-left: 0;
        margin-right: 4%;
        width: 42%;
        height: auto;
    }

    #languages a {
        height: auto;
        width: 48%;
    }

    #languages a img {
        margin-top: 3px;
        width: 80%;
    }

    #basketpreview {
        width: 30%;
    }

    .strapline {
        font-size: 1.2em;
    }

    #cats, #cats ul li a {
        width: 100%;
    }

    #cats ul li {
        width: 19.8%;
    }

    span.search input {
        width: 94%;
    }

    .sidebar {
        width: 28%;
    }

    .banktransfer {
        padding: 6px 0 0;
        font-size: 12px;
    }

    #content {
        width: 71%;
        margin-left: 29%;
    }

    .middle {
        width: 65%;
    }

    .right {
        width: 32%;
        width: calc(35% - 15px);
        margin-left: 15px;
    }

    #slideshow {
        width: 100%;
        height: 300px;
        height: 30.1vw;
    }

    .new_item_holder ul li {
        width: 30%;
        height: auto;
    }

    #subcats li {
        width: 22%;
        margin: 5px 1%;
    }

    #surname_form {
        width: 32%;
    }

    #login_form, #surname_form {
        width: 58%;
        float: right;
    }

    .footer_images {
        height: 65px;
        height: 6.7vw;
        padding: 5px 0;
    }

    .footer_images span {
        width: 9.5%;
        height: auto;
    }

    .footer_images span img {
        width: 100%;
        height: auto;
    }

    #footer {
        height: 110px;
        background: url(/media/design/footer_bg.jpg) repeat-x top left transparent;
        background-size: 100%;
        background-position: 50%;
    }
    
    .email, .telephone {
        padding: 0 1%;
        width: 48%;
    }
    
    .social {
        float: right;
        width: 30%;
    }

    div.trustpilot-widget {
        left: 110px;
        top: -4px;
        position: relative;
    }
}

/* Portrait devices (and landscape mobiles) - general styling */
@media only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 860px),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 860px),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 860px),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 860px),
only screen 
and (in-resolution: 72dpi)
and (max-width: 860px),
only screen 
and (min-resolution: 1dppx)
and (max-width: 860px),
only screen
and (max-width: 860px) {
    #container, .container {
        width: 98%;
        padding: 3px 1%;
    }

    #slideshow {
        height: 44vw;
    }

    #slideshow img {
        width: 100%;
        height: 100%;
    }

    #surname_form {
        width: 32%!important;
    }
    
    .middle {
        width: 100%;
    }

    .right {
        width: 100%;
        margin-left: 15px;
    }

    .half {
        width: 48%;
        float: left;
    }

    .half:first-child {
        margin-right: 4%;
    }

    .footer_images span {
        width: 9.3%;
    }
}

@media only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 740px),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 740px),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 740px),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 740px),
only screen 
and (in-resolution: 72dpi)
and (max-width: 740px),
only screen 
and (min-resolution: 1dppx)
and (max-width: 740px),
only screen
and (max-width: 740px) {
    .mHide {
        display: none;
    }

    .mMBot {
        margin-bottom: 20px;
    }

    #header {
        padding-top: 10px;
    }

    #blog-button {
        width: 14%;
        position: fixed;
        top: 5px;
        z-index: 20;
        left: 42%;
    }

    #languages {
        width: 14%;
        margin-top: 0;
        position: fixed;
        top: 5px;
        left: 1%;
        z-index: 20;
    }

    #header #navArea {
        width: 100%;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10;
        padding-top: 40px;
        background-color: #fff;
        border-bottom: 1px solid #939598;
    }

    #header #hamburger {
        height: 36px;
        width: 36px;
        background: -webkit-linear-gradient(bottom, #ffffff 0%, #ffffff 5%, #ffc10e 5%, #ffc10e 25%, #ffffff 25%, #ffffff 40%, #fbad17 40%, #fbad17 60%, #ffffff 60%, #ffffff 75%, #f7941d 75%, #f7941d 95%, #ffffff 95%, #ffffff 100%);
        background: -moz-linear-gradient(bottom, #ffffff 0%, #ffffff 5%, #ffc10e 5%, #ffc10e 25%, #ffffff 25%, #ffffff 40%, #fbad17 40%, #fbad17 60%, #ffffff 60%, #ffffff 75%, #f7941d 75%, #f7941d 95%, #ffffff 95%, #ffffff 100%);
        background: -o-linear-gradient(bottom, #ffffff 0%, #ffffff 5%, #ffc10e 5%, #ffc10e 25%, #ffffff 25%, #ffffff 40%, #fbad17 40%, #fbad17 60%, #ffffff 60%, #ffffff 75%, #f7941d 75%, #f7941d 95%, #ffffff 95%, #ffffff 100%);
        background: linear-gradient(bottom, #ffffff 0%, #ffffff 5%, #ffc10e 5%, #ffc10e 25%, #ffffff 25%, #ffffff 40%, #fbad17 40%, #fbad17 60%, #ffffff 60%, #ffffff 75%, #f7941d 75%, #f7941d 95%, #ffffff 95%, #ffffff 100%);
        cursor: pointer;
        position: fixed;
        top: 2px;
        right: 2px;
    }

    #header ul.nav1 {
        width: 50%;
        height: unset;
        margin: 0;
        float: none;
        position: fixed;
        top: 40px;
        right: 0;
        border: none;
        max-height: 0;
        overflow: hidden;
        -webkit-transition-property: max-height;
        -moz-transition-property: max-height;
        -ms-transition-property: max-height;
        -o-transition-property: max-height;
        transition-property: max-height;
        -webkit-transition-duration: 600ms;
        -moz-transition-duration: 600ms;
        -ms-transition-duration: 600ms;
        -o-transition-duration: 600ms;
        transition-duration: 600ms;
        -webkit-transition-timing-function: ease-in-out;
        -moz-transition-timing-function: ease-in-out;
        -ms-transition-timing-function: ease-in-out;
        -o-transition-timing-function: ease-in-out;
        transition-timing-function: ease-in-out;
        border-top-right-radius: 0;
        border-top-left-radius: 0;
        background: none;
    }

    #header ul.nav1.openNav {
        max-height: 11.9em;
        overflow: hidden;
        border: 1px solid #939598;
    }
    
    #header ul.nav1 li {
        width: 100%;
        border-bottom: 1px solid #939598;
        float: none;
        background: url('/media/design/top_nav_bg.jpg') repeat-x 0 0 transparent;
    }
    
    #header ul.nav1 li:last-child {
        border-bottom: none;
    }

    #header ul.nav1 li a {
        padding: 0;
        border-right: none;
        width: 100%;
        display: block;
        text-align: center;
    }

    #logo {
        width: 62%;
        padding-top: 80px;
    }

    #basketpreview {
        width: 30%;
        margin-top: 40px;
    }

    #itemimage {
        width: 45%;
    }

    table {
        max-width: 100%;
        overflow: auto;
    }
}

@media only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 640px),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 640px),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 640px),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 640px),
only screen 
and (in-resolution: 72dpi)
and (max-width: 640px),
only screen 
and (min-resolution: 1dppx)
and (max-width: 640px),
only screen
and (max-width: 640px) {
    #logo {
        width: 100%;
        padding-top: 40px;
    }

    #logo img {
        margin: 0 17.1%;
    }

    .mobile-only {
        display: block;
    }

    .mobile-only .search input {
        margin-top: 10px;
    }

    #basketpreview {
        width: 100%;
        margin-top: 20px;
    }

    #blog-button {
        width: 18%;
        position: fixed;
        top: 5px;
        z-index: 20;
        left: 42%;
    }

    #languages {
        width: 18%;
        margin-top: 0;
        position: fixed;
        top: 5px;
        left: 1%;
        z-index: 20;
    }

    #cats {
        height: unset;
        border: 0;
        border-radius: 0;
    }

    #cats ul li {
        width: 99%;
        width: calc(100% - 2px);
        background: url(/media/design/cats_bg.jpg) repeat-x 0 0 transparent;
        border: 1px solid #000;
        overflow: hidden;
        margin: 0 0 10px;
    }

    #cats ul li:first-child {
        border-left: 1px solid #000;
    }

    #cats ul li:last-child {
        margin: 0;
    }

    .sidebar {
        width: 100%;
        float: none;
    }

    .sideSection {
        width: 48%;
        float: left;
    }

    .sideSection:first-child {
        margin-right: 4%;
    }

    .left_header_large {
        font-size: 15px;
        padding-left: 10px;
        padding-right: 10px;
    }
    
    #content {
        width: 100%;
        margin-left: 0;
    }

    #slideshow {
        height: 60vw;
    }

    #shopcats {
        display: none;
    }

    .footer_images {
        height: 120px;
    }

    .footer_images span {
        width: 19%;
    }

    #login_form, #surname_form {
        width: 92%!important;
        width: calc(100% - 30px)!important;
        float: none;
    }

    .email, .telephone, .social {
        width: 98%;
    }

    .social a img {
        float: none;
    }

    #footer {
        height: 220px;
    }

    a.button {
        display: inline-block;
        padding: 7px 12px;
        margin: 0 0 10px;
    }
}

@media only screen 
and (-webkit-min-device-pixel-ratio: 1)
and (max-width: 460px),
only screen 
and (-min-moz-device-pixel-ratio: 1)
and (max-width: 460px),
only screen 
and (-o-min-device-pixel-ratio: 1/1)
and (max-width: 460px),
only screen 
and (min-device-pixel-ratio: 1)
and (max-width: 460px),
only screen 
and (in-resolution: 72dpi)
and (max-width: 460px),
only screen 
and (min-resolution: 1dppx)
and (max-width: 460px),
only screen
and (max-width: 460px) {
    .footer_images {
        height: 175px;
    }

    .footer_images span {
        width: 23%;
    }

    div.trustpilot-widget {
        left: -12px;
        top: 0px;
        transform: scale(0.9);
    }
}
