

.responsive body
{
   min-width: 240px;
}
  
.responsive img 
{
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}  
  
.responsive .nbb-content-layout img,
.responsive .nbb-content-layout video
{
   max-width: 100%;
   height: auto !important;
}

.responsive.responsive-phone .nbb-content-layout img 
{
   margin: 1%;
}

.responsive.responsive-phone .nbb-collage,
.responsive.responsive-tablet .nbb-collage {
   margin: 0 !important;
}

.responsive .nbb-content-layout .nbb-sidebar0, 
.responsive .nbb-content-layout .nbb-sidebar1, 
.responsive .nbb-content-layout .nbb-sidebar2 
{
   width: auto !important;
}
    
.responsive .nbb-content-layout, 
.responsive .nbb-content-layout-row, 
.responsive .nbb-layout-cell 
{
   padding: 0;
   display: block;
}
    
.responsive .image-caption-wrapper 
{
   width: auto;
}

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

.responsive .nbb-responsive-embed 
{
   height: 0;
   padding-bottom: 56.25%;
   /* 16:9 */
    position: relative;
}

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

.responsive .nbb-header 
{
   width: auto !important;
   max-width: none !important;
   min-height: 200px !important;
   min-width: 0 !important;
   text-align: center;
}

.default-responsive .nbb-header 
{
   height: auto;
}

.default-responsive .nbb-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;
}

.default-responsive .nbb-header .nbb-headline, 
.default-responsive .nbb-header .nbb-slogan 
{
   display: block !important;
   top: 0 !important;
   left: 0 !important;
   margin: 2% !important;
   text-align: center !important;
}
    
.default-responsive .nbb-header .nbb-headline a, 
.default-responsive .nbb-header .nbb-slogan 
{
   white-space: normal !important;
}

.default-responsive .nbb-header .nbb-logo
{
   display: inline-block;
   margin: auto !important;
   left: auto;
   top: auto !important;
   width: auto;
   height: auto;
}

.responsive .nbb-header .nbb-slidenavigator 
{
   position: absolute;
}

.default-responsive .nbb-header .nbb-positioncontrol 
{
   top: auto !important;
   right: auto !important;
   bottom: auto !important;
   left: auto !important;
   width: auto;
   height: auto;
   margin: auto;
}

.responsive .nbb-header #nbb-flash-area
{
   display: none;
}

/* Search and other elements in header element directly */
.default-responsive .nbb-header>.nbb-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;
}

.default-responsive .nbb-header .nbb-textblock 
{
   position: relative !important;
   display: block !important;
   margin: auto !important;
   left: 0 !important;
   right: 0 !important;
   top: auto !important;
   height: auto !important;
   width: auto;
   background-image: none;
}

/* '.nbb-header *' used noram align, but for '.nbb-textblock *' we must force align because of preview */
.responsive .nbb-header .nbb-textblock *
{
   text-align: center !important;
}

.default-responsive .nbb-header .nbb-shapes > .nbb-textblock,
.default-responsive .nbb-header .nbb-slide-item > .nbb-textblock
{
   display: none !important;
}

.default-responsive .nbb-header .nbb-shapes > .nbb-textblock *
{
   text-align: center !important;
   width: auto !important;
   height: auto !important;
   display: block;
}

.default-responsive .nbb-header .nbb-slider .nbb-textblock *
{
   text-align: center !important;
   width: auto !important;
   height: auto !important;
   display: block;
}

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

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

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

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

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

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

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

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

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

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

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

.nbb-nav .nbb-menu-btn 
{
   border: 1px solid #404040;
   border-radius: 3px;
   box-shadow: 0 0 3px 0 rgba(0, 0, 0, .2);
   display: none;
   -svg-background: linear-gradient(to bottom, #707070 0, #000 100%);
   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;
   outline: none;
   padding: 5px;
   position: relative;
   vertical-align: bottom;
   width: 22px;
}

.nbb-nav .nbb-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;
}

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

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

.responsive .nbb-nav .nbb-hmenu.visible 
{
   display: block;
}

.responsive .nbb-nav .nbb-hmenu>li>a
{
   border-radius: 0;
}

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

.responsive .nbb-pageslider 
{
   width: auto !important;
   max-width: none !important;
   min-height: 50vh !important;
   min-width: 0 !important;
   text-align: center;
}

.default-responsive .nbb-pageslider 
{
   height: auto;
}

.default-responsive .nbb-pageslider .nbb-slide-item > *
{
   position: relative;
   text-align: center;
   -webkit-transform: none !important;
   -moz-transform: none !important;
   -o-transform: none !important;
   -ms-transform: none !important;
   transform: none !important;
}

.default-responsive .nbb-pageslider .nbb-slide-item > .nbb-textblock
{
   display: none !important;
}

.default-responsive .nbb-pageslider .nbb-logo
{
   display: inline-block;
   margin: auto !important;
   left: auto;
   top: auto !important;
}

.responsive .nbb-pageslider .nbb-slidenavigator 
{
   position: absolute;
}

.default-responsive .nbb-pageslider .nbb-positioncontrol 
{
   top: auto !important;
   right: auto !important;
   bottom: auto !important;
   left: auto !important;
   width: auto;
   height: auto;
   margin: auto;
}

.responsive .nbb-pageslider #nbb-flash-area
{
   display: none;
}

.default-responsive .nbb-pageslider .nbb-textblock 
{
   position: relative !important;
   display: block !important;
   margin: auto !important;
   left: 0 !important;
   right: 0 !important;
   top: auto !important;
   height: auto !important;
   width: auto;
}

.default-responsive .nbb-pageslider .nbb-shapes > .nbb-textblock *
{
   text-align: center !important;
   width: auto !important;
   height: auto !important;
   display: block;
}

.default-responsive .nbb-pageslider .nbb-slider .nbb-textblock *
{
   text-align: center !important;
   width: auto !important;
   height: auto !important;
   display: block;
}

/* For icons like facebook, rss, etc. */
.responsive .nbb-pageslider>.nbb-textblock>div 
{
   width: 100%;
}
.responsive .nbb-sheet
{
   width: auto !important;
   min-width: 240px !important;
   max-width: none !important;
   margin-right: 1% !important;
   margin-left: 1% !important;
}

#nbb-resp {
   display: none;
}

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

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

#nbb-resp-desktop {
   display: none;
}
#nbb-resp-tablet-landscape {
   display: none;
}
#nbb-resp-tablet-portrait {
   display: none;
}
#nbb-resp-phone-landscape {
   display: none;
}
#nbb-resp-phone-portrait {
   display: none;
}

@media (min-width: 1200px)
{
    #nbb-resp-desktop { display: block; }
}

@media (min-width: 980px) and (max-width: 1199px)
{
    #nbb-resp-tablet-landscape { display: block; }
}

@media (min-width: 768px) and (max-width: 979px)
{
    #nbb-resp-tablet-portrait { display: block; }
}

@media (min-width: 480px) and (max-width: 767px)
{
    #nbb-resp-phone-landscape { display: block; }
	.default-responsive .nbb-header, .default-responsive #nbb-header-bg { background-position: 0 0; }
	.nbb-hire { clear: both; width: 98%; }
}

@media (max-width: 479px)
{
    #nbb-resp-phone-portrait { display: block; }
	#headerWidget img { display:none; }
	.default-responsive .nbb-header, .default-responsive #nbb-header-bg { background-position: 0 0; }
	.nbb-footer-text p { clear: both; }
	.nbb-hire { clear: both; width: 98%; }
	.textwidget img { display:none; }
}
.responsive .nbb-content-layout, 
.responsive .nbb-content-layout-row, 
.responsive .nbb-layout-cell 
{
   display: block;
}

.responsive .nbb-layout-cell 
{
   width: auto !important;
   height: auto !important;
}

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

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

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

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

.responsive .responsive-layout-row-3 .responsive-tablet-layout-cell 
{
   width: 33.33% !important;
}

