/*

 * This file is part of Theme for
 * pragmaMx - Web Content Management System.
 *
 * $template : arclite2 $
 * $Revision: 2.1 $
 *
 * $Author: TECMU - http://www.tecmu.de $
 * $Date: 2016-09-26 09:21:12 $
  */

.responsive body
{
  min-width: 240px;
  text-justify: none;
}

.responsive img
{
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.responsive .content-layout img,
.responsive .content-layout video
{
  max-width: 100%;
  height: auto !important;
}

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

.responsive.responsive-phone .collage,
.responsive.responsive-tablet .collage {
  text-justify: none;
  margin: 0 !important;
}

.responsive .content-layout .sidebar0,
.responsive .content-layout .sidebar1,
.responsive .content-layout .sidebar2
{
  text-justify: none;
  width: auto !important;
}

.responsive .content-layout,
.responsive .content-layout-row,
.responsive .layout-cell
{
  text-justify: none;
  display: block;
}

.responsive .content-layout,
.responsive .content-layout-row
{
  text-justify: none;
  padding: 0;
}

.responsive .image-caption-wrapper
{
  text-justify: none;
  width: auto;
}

.responsive.responsive-tablet .vmenublock,
.responsive.responsive-tablet .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;
  text-justify: none;
}

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

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

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

.default-responsive .header
{
  height: auto;
  text-justify: none;
}

.default-responsive .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;
  text-justify: none;
}

.default-responsive .header .headline,
.default-responsive .header .slogan
{
  display: block !important;
  top: 0 !important;
  left: 0 !important;
  margin: 2% !important;
  text-align: center !important;
  text-justify: none;
}

.default-responsive .header .headline a,
.default-responsive .header .slogan
{
  white-space: normal !important;
  text-justify: none;
}

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

.responsive .header .slidenavigator
{
  position: absolute;
  text-justify: none;
}

.default-responsive .header .positioncontrol
{
  display: block !important;
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  margin: 2% auto !important;
  width: auto !important;
  height: auto !important;
  text-justify: none;
}

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

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

.default-responsive .header .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;
  text-justify: none;
}

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

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

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

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

/* For icons like facebook, rss, etc. */
.responsive .header>.textblock>div
{
  width: 100%;
  text-justify: none;
}
/* dynamic width nav */
.responsive nav.pmxnav,
.responsive .pmxnav-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: left !important;
  text-justify: none;
}

.responsive nav.pmxnav
{
  min-width: 1%;
  text-justify: none;
}

.responsive .pmxnav
{
  padding-left: 0;
  padding-right: 0;
  margin-top: 20px;
  text-justify: none;
}

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

/* elements on different lines */
.responsive .pmxnav ul.hmenu li,
.responsive .hmenu-extra1,
.responsive .hmenu-extra2
{
  float: none;
  text-justify: none;
}

/* horizontal margins */
.responsive .pmxnav ul.hmenu>li:first-child,
.responsive .pmxnav ul.hmenu>li:last-child,
.responsive .pmxnav ul.hmenu>li
{
  margin-left: 0;
  margin-right: 0;
  text-justify: none;
}

/* separator */
.responsive .pmxnav ul.hmenu>li:before
{
  display: none;
  text-justify: none;
}

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

.responsive .pmxnav ul.hmenu>li:first-child>a
{
  margin-top: 0 !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu>li:last-child>a
{
  margin-bottom: 0 !important;
  text-justify: none;
}

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

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

.responsive .pmxnav ul.hmenu li.active>ul
{
  display: block !important;
  text-justify: none;
}
.responsive .pmxnav ul.hmenu ul li.active>a
{
  font-weight: bold;
  text-justify: none;
}

.pmxnav .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: 20px;
  text-justify: none;
}

.pmxnav .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;
  text-justify: none;
}

.pmxnav .menu-btn:hover span
{
  background: #f3f3f3;
  text-justify: none;
}

.responsive .pmxnav .menu-btn
{
  display: inline-block;
  text-justify: none;
}

.responsive .pmxnav .hmenu.visible
{
  display: block;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu>li>ul>li:first-child:after
{
  display: none;
  text-justify: none
}

.responsive .pmxnav ul.hmenu ul a
{
  padding-left: 4% !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu ul ul a
{
  padding-left: 6% !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu ul ul ul a
{
  padding-left: 8% !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu ul ul ul ul a
{
  padding-left: 10% !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu ul ul ul ul ul a
{
  padding-left: 12% !important;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu>li>ul
{
  padding: 1px;
  text-justify: none;
}

.responsive .pmxnav ul.hmenu>li>ul:before
{
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-justify: none;
}

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

#resp {
  display: none;
  text-justify: none;
}

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

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

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

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

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

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

@media (min-width: 480px) and (max-width: 767px) {
  #resp-phone-landscape {
  display: block;
  text-justify: none;
  }
}

@media (max-width: 479px) {
  #resp-phone-portrait {
  display: block;
  text-justify: none;
  }
}

.responsive .content-layout,
.responsive .content-layout-row,
.responsive .layout-cell
{
  display: block;
  text-justify: none;
}

.responsive .layout-cell
{
  width: auto !important;
  height: auto !important;
  text-justify: none;
}

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

.responsive .responsive-tablet-layout-cell,
.responsive.responsive-tablet .footer .content-layout .layout-cell
{
  margin: 1%;
  width: 98% !important;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-justify: none;
}

.responsive .responsive-layout-row-2 .responsive-tablet-layout-cell,
.responsive.responsive-tablet .footer .content-layout .responsive-layout-row-2 .layout-cell
{
  width: 48% !important;
  text-justify: none;
}

.responsive .responsive-layout-row-3 .responsive-tablet-layout-cell,
.responsive.responsive-tablet .footer .content-layout .responsive-layout-row-3 .layout-cell
{
  width: 31% !important;
  text-justify: none;
}

.responsive ul.vmenu>li>ul
{
  padding: 5px;
  display: none;
  text-justify: none;
}

.responsive ul.vmenu>li>ul:before
{
  display: block;
  position: absolute;
  content: ' ';
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-justify: none;
}

.responsive ul.vmenu>li>ul.vmenu-resp-popup-visible
{
  display: block;
  text-justify: none;
}

.responsive ul.vmenu ul {
  position: relative;
  left: auto;
  top: auto;
  visibility: visible;
  text-justify: none;
}

.responsive ul.vmenu ul ul a
{
  padding-left: 50px;
  text-justify: none;
}

.responsive ul.vmenu ul ul ul a
{
  padding-left: 75px;
  text-justify: none;
}

.responsive ul.vmenu ul ul ul ul a
{
  padding-left: 100px;
  text-justify: none;
}

.responsive ul.vmenu ul ul ul ul ul a
{
  padding-left: 125px;
  text-justify: none;
}

.responsive .post
{
  border-radius: 0;
  text-justify: none;
}

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