.mobileOnly {
    display: inherit !important;
}

.mobileHide {
    display: none !important;
}

#pageBack,
#wrapper {
    margin: 0;
}

body>#popup div.ajax,
.stripePayment #stripeCardDetails {
    min-width: unset;
}

body.adminMode #jumpTop {
    bottom: 2em;
}

header {
    width: 100%;
    z-index: 9999;
    padding: 0;
}

header#banner a.logo {
    max-width: unset;
    float: left;
    height: 4em;
    margin: 0.5em;
    background-position: 0 50%;
}

header a.logo h1 {
    font-size: 7vw;
    line-height: 1em;
}

nav#nav {
    position: fixed;
    right: 0;
    z-index: 9999;
    font-size: 1.2em;
    top: 1em;
    background: none;
    padding: 0;
}

nav#nav a#cart {
    float: right;
}

nav#nav a.openClose,
nav#nav a#cart,
nav#nav a#toggleMenu,
nav#nav #clientMenu>a {
    clear: none;
    float: right;
    min-width: 1.5em;
    text-align: center;
}

nav#nav ul {
    display: none;
    float: none;
    clear: both;
    padding: 0em;
    text-align: right;
}

nav#nav ul.show {
    display: block;
}

nav#nav ul ul {
    float: none !important;
    display: block !important;
}

nav#nav ul li {
    float: none !important;
    border: none;
    margin: 0;
    text-align: left;
    display: block;
    min-width: 12em;
}

nav#nav ul li div,
nav#nav ul li:hover div,
nav#nav ul li.hover div {
    display: none;
}

nav#nav ul li div ul li {
    width: 100%;
    border: none;
}

nav#nav li {
    margin: 0;
}

nav#nav ul li div.open {
    display: block !important;
    position: static !important;
    width: auto !important;
    border-radius: 0 !important;
    padding-top: 0 !important;
}

nav#nav ul li div span.description {
    padding: 0;
    font-size: 0.7em;
    display: none !important;
}

nav#nav ul li li li {
    padding: 0;
    border: none;
    background: inherit;
    float: left !important;
    clear: none;
    width: auto;
}

nav#nav #clientMenu ul {
    display: block;
}

nav#nav #clientMenu ul li a {}

#main {
    padding-left: 0;
    padding-right: 0;
    width: auto;
    max-width: none;
}

article .details .image,
article .details .video,
article .details .images,
article .details .googleMap {
    width: 100%;
    margin: 0;
    max-height: none;
    margin-bottom: 1em;
    border-radius: unset;
}

article .details .images .image:not(:first-child) {
    display: none;
}

.childItems article .details .image,
.childItems article .details .video,
.childItems article .details .googleMap {
    width: 40%;
    margin: 0px;
    float: left;
    margin-right: 1em;
    margin-bottom: 1em;
}

article .attributes {
    float: none;
    width: 100%;
    display: block;
}

nav #clientMenu {
    margin: 0;
    margin-left: 1em;
    position: static;
}

nav #clientMenu ul {
    text-align: right;
}

nav #clientMenu ul li {
    min-width: 15em;
    display: inline-block;
    font-size: 1.3em;
}

#clientMenu h3 {}

#main .products article,
#main .products article .attributes,
#main .products article .image,
#main .products article .googleMap,
#main .products article .video {
    width: 100%;
    padding: 0;
    margin: 0;
    margin-bottom: 1em;
    float: none;
    box-sizing: border-box;
    max-height: unset;
    max-width: unset;
    padding: 1em;
}

#main .products article .attributes {
    padding: 1em;
}

#main.hasMenu {
    max-width: inherit;
    padding-left: inherit;
}

#main .products article .details .image .frame,
#main article .details .googleMap {
    max-height: unset;
}

nav#menu {
    position: static;
    width: auto;
    overflow: hidden;
    margin: 0;
}

nav#menu ul li {
    float: left;
    margin-right: 1em;
    margin-bottom: 0.5em;
    min-width: 46%;
}

nav#menu ul li a {}

#adminMenu,
#adminMenu #adminActiveSections {
    position: fixed;
    width: auto;
    float: none;
    border: none;
    z-index: 999;
    left: 0;
    top: unset;
    right: 0;
    bottom: 0;
}

#adminTabs ul hr {
    display: none;
}

#adminMenu ul li {
    float: left;
    margin-right: 0.5em;
}

#adminMenu ul li.hover a.adminSection span,
#adminMenu ul li a.adminSection span {
    position: static;
    float: none;
    display: block;
    text-align: center;
    font-size: 0.6em;
    margin: 0;
    background: none;
    padding: 0;
    color: inherit;
}

#adminMenu ul li a.adminSection {
    padding: 0.3em;
    font-size: 3em;
    font-size: 3em;
}

#adminMenu>#menuToggle {
    display: block;
    line-height: 1em;
    font-size: 2em;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}

#adminMenu>#menuToggle:before {
    font: normal normal normal 1em/1 FontAwesome;
    content: "\f106";
}

#adminMenu>#menuToggle.active:before {
    font: normal normal normal 1em/1 FontAwesome;
    content: "\f107";
}

#adminTabs {
    overflow: hidden;
    font-size: 0.5em;
    display: none;
}

div.hasSecondary aside,
div.hasSecondary div.primary,
.cols .colHalf {
    float: none;
    width: auto;
    clear: both;
}

section.products {}

section.content iframe {
    max-width: 100%;
}

nav #clientMenu.hover div.userMenu,
nav #clientMenu div.userMenu {
    display: none;
}

nav #clientMenu div.userMenu,
nav #clientMenu div.userMenu.show {
    position: fixed;
    background: none;
    overflow: unset;
    right: 0;
    top: 4em;
}

nav #clientMenu div.userMenu.show {
    display: block;
}

.openClose::after,
.openClose.open::after {
    content: unset;
    padding: 0;
}

.order .basket,
.order .total {
    float: none;
    width: auto;
}

ul.tabs li,
ul.filter li {
    float: none;
    display: block;
}