/* Created by JS Design - Portland, Oregon USA */

.responsive body
{
   min-width: 240px;
}
  
.responsive .jsd-content-layout img,
.responsive .jsd-content-layout video
{
   width: 100%;
   height: auto !important;
}
.responsive .jshop_img_thumb{max-width:35px;}
.responsive.responsive-phone .jsd-content-layout img 
{
   *float: none !important;
   margin: 1%;
}

.responsive.responsive-phone .jsd-collage {
   margin: 1% !important;
}
    
.responsive .jsd-content-layout .jsd-sidebar0, 
.responsive .jsd-content-layout .jsd-sidebar1, 
.responsive .jsd-content-layout .jsd-sidebar2 
{
   width: auto !important;
}
    
.responsive .jsd-content-layout, 
.responsive .jsd-content-layout-row, 
.responsive .jsd-layout-cell 
{
   display: block;
}
    
.responsive .image-caption-wrapper 
{
   width: auto;
}

.responsive.responsive-tablet .jsd-vmenublock,
.responsive.responsive-tablet .jsd-block
{
   margin-left: 1%;
   margin-right: 1%;
   width: 48%;
   float: left;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.responsive .jsd-responsive-embed 
{
   width: 95%;
   position: relative;
   padding-bottom: 56.25%;
   /* 16:9 */
	height: 0;
    margin-bottom: 8px;
}

.responsive .jsd-responsive-embed iframe,
.responsive .jsd-responsive-embed object,
.responsive .jsd-responsive-embed embed
{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

.responsive .jsd-header 
{
   width: auto;
   height: auto;
   min-height: 100px;
   min-width: 1%;
   background-position: center center !important;
   background-size: cover !important;
   background-repeat: repeat !important;
}

.responsive .jsd-header .jsd-headline, 
.responsive .jsd-header .jsd-slogan 
{
   display: block !important;
   top: 0 !important;
   left: 0 !important;
   margin: 2% !important;
}
    
.responsive .jsd-header .jsd-headline a, 
.responsive .jsd-header .jsd-slogan 
{
   white-space: normal !important;
}
  
.responsive .jsd-header *
{
   position: relative;
   text-align: center;
   -webkit-transform: none !important;
   -moz-transform: none !important;
   -o-transform: none !important;
   -ms-transform: none !important;
   transform: none !important;
}

.responsive .jsd-header #jsd-flash-area,
.responsive .jsd-header .jsd-shapes>*
{
   display: none;
}

.responsive #jsd-header-bg 
{
   background-position: center center !important;
   background-size: cover !important;
   background-repeat: repeat !important;
}

/* Search and other elements in header element directly */
.responsive .jsd-header>.jsd-textblock
{
   position: relative !important;
   display: block !important;
   margin: 1% auto !important;
   width: 75% !important;
   top: auto !important;
   right: auto !important;
   bottom: auto !important;
   left: auto !important;
}

/* For icons like facebook, rss, etc. */
.responsive .jsd-header>.jsd-textblock>div 
{
   width: 100%;
}
/* dynamic width nav */
.responsive nav.jsd-nav,
.responsive .jsd-nav-inner
{
   width: auto !important;
   position: relative !important;
   top: auto !important;
   left: auto !important;
   right: auto !important;
   bottom: auto !important;
   margin-top: 0;
   margin-bottom: 0;
   min-width: 0;
   text-align: right !important;
}

.responsive nav.jsd-nav
{
   min-width: 1%;
}

.responsive .jsd-nav 
{
   padding-left: 0;
   padding-right: 0;
   margin-top: 20px;
}

/* full width hmenu, instead of inline-block */
.responsive .jsd-nav ul.jsd-hmenu 
{
   float: none;
   text-align: center;
   display: none;
}

/* elements on different lines */
.responsive .jsd-nav ul.jsd-hmenu li,
.responsive .jsd-hmenu-extra1,
.responsive .jsd-hmenu-extra2
{
   float: none;
}
  
/* horizontal margins */
.responsive .jsd-nav ul.jsd-hmenu>li:first-child, 
.responsive .jsd-nav ul.jsd-hmenu>li:last-child, 
.responsive .jsd-nav ul.jsd-hmenu>li
{
   margin-left: 0;
   margin-right: 0;
}
 
/* separator */ 
.responsive .jsd-nav ul.jsd-hmenu>li:before
{
   display: none;
}

/* vertical distance between items */
.responsive .jsd-nav ul.jsd-hmenu a
{
   margin-top: 1px !important;
   margin-bottom: 1px !important;
   height: auto;
   white-space: normal;
}

.responsive .jsd-nav ul.jsd-hmenu>li:first-child>a
{
   margin-top: 0 !important;
}

.responsive .jsd-nav ul.jsd-hmenu>li:last-child>a
{
   margin-bottom: 0 !important;
}

/* fixes for extended menu */
.responsive .jsd-nav .ext, 
.responsive .jsd-nav ul.jsd-hmenu>li>ul, 
.responsive .jsd-nav ul.jsd-hmenu>li>ul>li,
.responsive .jsd-nav ul.jsd-hmenu>li>ul>li a
{
   width: auto !important;
}

/* submenu position on hover */
.responsive .jsd-nav ul.jsd-hmenu ul
{
   left: auto !important;
   right: auto !important;
   top: auto !important;
   bottom: auto !important;
   display: none !important;
   position: relative !important;
   visibility: visible !important;
}

.responsive .jsd-nav ul.jsd-hmenu li.active>ul
{
   display: block !important;
}
.responsive .jsd-nav ul.jsd-hmenu ul li.active>a
{
   font-weight: bold;
}

.jsd-nav .jsd-menu-btn 
{
   border: 1px solid #404040;
   border-radius: 3px;
   box-shadow: 0 0 3px 0 rgba(0, 0, 0, .2);
   display: none;
   background: -ms-linear-gradient(top, #707070 0, #000 100%);
   background: -moz-linear-gradient(top, #707070 0, #000 100%);
   background: -o-linear-gradient(top, #707070 0, #000 100%);
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), color-stop(1, #000));
   background: -webkit-linear-gradient(top, #707070 0, #000 100%);
   background: linear-gradient(to bottom, #707070 0, #000 100%);
   margin: 3px;
   padding: 5px;
   position: relative;
   width: 20px;
}

.jsd-nav .jsd-menu-btn span 
{
   background: #E0E0E0;
   border-radius: 2px;
   display: block;
   height: 3px;
   margin: 3px 1px;
   position: relative;
   -moz-transition: background .2s;
   -o-transition: background .2s;
   -webkit-transition: background .2s;
   transition: background .2s;
}

.jsd-nav .jsd-menu-btn:hover span
{
   background: #f3f3f3;
}

.responsive .jsd-nav .jsd-menu-btn 
{
   display: inline-block;
}

.responsive .jsd-nav .jsd-hmenu.visible 
{
   display: block;
	background: url(../images/header.jpg);
}

.responsive .jsd-nav ul.jsd-hmenu>li>ul>li:first-child:after 
{
   display: none;
}
.responsive .jsd-nav ul.jsd-hmenu ul a
{
   padding-left: 4% !important;
}
.responsive .jsd-nav ul.jsd-hmenu ul ul a
{
   padding-left: 6% !important;
}
.responsive .jsd-nav ul.jsd-hmenu ul ul ul a
{
   padding-left: 8% !important;
}
.responsive .jsd-nav ul.jsd-hmenu ul ul ul ul a
{
   padding-left: 10% !important;
}
.responsive .jsd-nav ul.jsd-hmenu ul ul ul ul ul a
{
   padding-left: 12% !important;
}
  
.responsive .jsd-nav ul.jsd-hmenu>li>ul
{
   padding: 5px;
}
  
.responsive .jsd-nav ul.jsd-hmenu>li>ul:before
{
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
}

.responsive .jsd-sheet
{
   width: auto !important;
   min-width: 240px !important;
   max-width: none;
   *margin-right: 1% !important;
   *margin-left: 1% !important;
}

#jsd-resp {
   display: none;
}

@media all and (max-width: 1024px)
{
    #jsd-resp, #jsd-resp-t { display: block; }
    #jsd-resp-m { display: none; }
}

@media all and (max-width: 480px)
{
    #jsd-resp, #jsd-resp-m { display: block; }
    #jsd-resp-t { display: none; }
}

.responsive .jsd-content-layout, 
.responsive .jsd-content-layout-row, 
.responsive .jsd-layout-cell 
{
   display: block;
}

.responsive .jsd-layout-cell 
{
   width: auto !important;
   height: auto !important;
   border-right-width: 0 !important;
   border-left-width: 0 !important;
   border-radius: 0 !important;
}

.responsive .jsd-content-layout:after, 
.responsive .jsd-content-layout-row:after, 
.responsive .jsd-layout-cell:after 
{
   content: ".";
   display: block;
   height: 0;
   clear: both;
   visibility: hidden;
}

.responsive .jsd-article {
    width: 90%;
}

.responsive .jsd-post
{
   border-radius: 0;
}

.responsive .jsd-footer-inner
{
   width: auto;
   padding: 2% !important;
   min-width: 0;
}

.responsive .responsive-tablet-layout-cell 
{
   width: 50% !important;
   float: left;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

/** Additional Custom CSS **/

.responsive .jsd-map {
    width: 90%;
    min-height: 125px;
}

.responsive .jsd-menu-image {
    margin-top: 0px;
    width: 100%;
    max-width: 125px;
}

.responsive .jsd-facebook {
    width: 100%;
    max-width: 75px !important;
}

.responsive .jshop_price {
    color: #FFF;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 15px;
}

.responsive .productfull .text_zoom img {
    float: left !important;
    padding-right: 5px;
    width: 8% !important;
}

.responsive [class*="attributes_"] {
    vertical-align: top;
    max-height: 55px;
}

.responsive .jsd-button {
}

.responsive table.cart tr th {
   padding: 5px 3px;
   font-size: 12px;
}

.responsive .jshop .cart .product_name {
   font-size: 14px;
}

.responsive .jshop .total {
   font-size: 16px;
}

.responsive .width50 {
   width: 23%;
   font-size: 10px;
   padding: 5px 10px;
}

.responsive #mxcpr {
   padding-top: 0;
   clear: none;
}

.responsive table.cart tr td {
   max-width: 70px !important;
}

.responsive .productfull .prod_buttons .buttons {
   padding-left: 30px;
}

.responsive .td_2 {
   float: right !important;
}

.responsive .rc-anchor-normal {
    width: 170px; 
}

.responsive .jsd-contact-form {
    width: 100%;
}

.responsive .jsd-contact-form-inner {
    padding: 5px 20px;
}