.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}
.clearfix:after {
  clear: both;
}
.hide-text {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.input-block-level {
  display: block;
  width: 100%;
  min-height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/*== 1200px and beyond ===================================================
========================================================================*/
/* Large desktop */
@media (min-width: 1200px) {

}
/*== Up to 1200px =====================================================
========================================================================*/
/* Large desktop */
@media (max-width: 1200px) {
  #contact_map {
    height: 376px;
  }
  #showcase-row .camera_prev {
    margin-left: 0px;
    left: auto;
    right: 67px;
  }
  #showcase-row .camera_next {
    margin-left: 0px;
    left: auto;
    right: 10px;
  }

}

@media (max-width: 1170px) and (min-width: 767px){
  .navigation ul.sf-menu > li > a, .navigation ul.sf-menu > li > span{
    font-size: 11px;
  }

}

@media (max-width: 900px){
  #header-row .row-container #logo{
    width: 100%;
    text-align: center;
  }
  .moduletable.navigation{
    width: 100%;
    margin: 10px 0px;
  }
  #header-row .row-container #logo img{

  }
  .navigation ul.sf-menu{
    display: block;
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
    justify-content: space-around;
  }
  .select-menu{
    display: none;
    width: 100%;
  }
  .menu-shadow{
    display:none;
  }
  #header-row {
    margin-bottom: 30px !important;
  } 

  .body__home #header-row
  {
    margin-bottom: 0 !important;
  }
  #header-row .language-switcher{
    position: static;
    margin: auto;
    clear: both;
    text-align: center;
  }

  .productWrapper
  {
    padding: 0;
  }

  .productLeft, .productRight
  {
    float:none;
    width: 100%;
    margin:0;
    margin-bottom: 2em;
  }

  #header-row .row-container #logo
  {
    padding: 20px;
  }

  #contact-form .inputDiv
  {
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
    justify-content: space-around;
  }

  #contact-form .inputDiv > div
  {
    float:none;
    width: 100%;
  }

  .pr_contact_us input
  {
    width: 100%;
  }

  .site-contact .span8
  {
    margin-bottom: 1em;
  }
}



/*== Up to 980px ======================================================
========================================================================*/
/* Narrow desktop */
@media (max-width: 980px) {
  .thumbnails {
    margin-left: -12px;
  }
  .thumbnails > li {
    margin-left: 12px;
  }
  /*footer*/
  #back-top {
    display: none !important;
  }
  #showcase-row .camera_target_content {
    display: none;
  }
  .img-intro__left,
  .img-full__left {
    float: none;
  }
  .img-intro__right,
  .img-full__right {
    float: none;
  }
  .services .img-intro__left,
  .services .img-full__left {
    float: left;
  }
}
/*== Up to 980px and beyond 768px ======================================
========================================================================*/
/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {

}
/*== Up to 767px ======================================================
========================================================================*/
/* Landscape phone to portrait tablet */

#menubutton, .googlemapmobile
{
  display: none;
}

.googlemapdesktop
{
  display: block;
}

@media (max-width: 767px) {
  h1
  {
    font-size: 25px;
  }
  .infoTitleWrapper
  {
    text-align: center;
  }
  .back-to-category, .productdetails-view .pull-right
  {
    float:none;
    text-align: center;
    margin-bottom: 1em;
  }
  .product-neighbours a.next-page, .product-neighbours a.previous-page
  {
    display: block;
    margin:0;
  }

  .product-neighbours
  {
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
    justify-content: space-around;
    text-align: center;
    margin-top: 1em;
  }

  .product-neighbours .clear
  {
    display: none;
  }

  #wrapper {
    margin: 0;
  }
  #footer-wrapper {
    height: auto;
  }
  #push {
    display: none;
  }
  #header-row {
    margin: 0 0 60px;
  }
  /*navigation*/
  .select-menu {
    display: none;
    width: 100%;
  }
  .sf-menu {
    display: none;
  }
  .navigation {
    float: none;
    margin: 30px 0 0;
  }
  /*content*/
  .item-image.blog-image {
    float: none;
    margin: 0 0 20px 0;
  }
  .row-fluid [class*="itemSpan"] {
    display: block;
    float: none;
    margin-left: 0;
    width: auto;
  }
  /*gallery*/
  .page-gallery ul.gallery .gallery-item {
    float: none;
  }
  .page-gallery ul.gallery .gallery-item .item_img {
    float: left;
    margin: 0 18px 18px 0 !important;
  }
  .img-full__left.span5 {
    width: 50%;
  }
  /*contact*/
  .contact_details .contact_details_item {
    width: 30%;
    float: left;
  }
  /*Modules*/
  /*search*/
  .mod-search__aside .mod-search_searchword {
    width: 50%;
  }
  /*login*/
  .mod-login__aside .mod-login_username,
  .mod-login__aside .mod-login_passwd {
    width: 50%;
  }
  #back-top {
    display: none !important;
  }
  #showcase-row .camera_prev {
    display: none;
  }
  #showcase-row .camera_next {
    display: none;
  }
  .mod-newsflash-adv__offers .item {
    margin: 0 0 50px 0;
  }
  #content-row {
    padding: 40px 0 26px;
  }
  #bottom-row {
    background: none;
  }
  #bottom-row #bottom-row-in {
    background: none;
    padding: 40px 0;
  }
  #bottom-row #bottom-row-in .moduletable {
    margin: 0 0 40px;
  }
  #mainbottom-row {
    background: none;
  }
  .body__services #content-row {
    padding: 30px 0;
  }
  #aside-right .moduletable {
    margin: 60px 0px;
  }
  .body__home #mainbottom-row {
    padding: 20px 0 0;
  }
  #header-row .row-container #logo {
    text-align: center;
  }
  #copyright-row .row-container .moduletable {
    text-align: center;
  }
  #copyright-row .social {
    text-align: center;
    margin-left: 0;
  }

  .headertagline
  {
    font-size: 1.5em;
  }

  body
  {
    padding:0;
  }

  body.menuopen
  {
    overflow: hidden;
  }

  #copyright > div
  {
    margin-bottom: 1em;
  }

  #PropertyListRegion
  {
    padding-top: 2em;
  }

  .navigation ul.sf-menu
  {
    display: none;
    position: fixed;
    top: 218px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    background: #002169;
    overflow-y: auto;
  }

  .navigation ul.sf-menu li
  {
    display: block;
    width: 100%;
    margin:0;
    text-align: center;
  }

  .menuopen .navigation ul.sf-menu
  {
    display: block;
  }

  #menubutton
  {
    text-align: right;
    display: block;
    background: #002169;
    color: #fff;
    padding: 10px;
    font-size: 2em;
  }

  .navigation ul.sf-menu ul
  {
    display: block !important;
    position: relative;
    top: auto !important;
    left: auto !important;
    width: 100%;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }

  .navigation ul.sf-menu ul li.firstItem
  {
    padding-top: 10px;
  }

  #content-row
  {
    position: relative;
  }

  .menuopen #content-row:after
  {
    content:'';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: rgba(0,0,0,0.5);
  }

  .mod-cta
  {
    display: block;
  }

  .mod-cta > div:first-child
  {
    margin-bottom: 1em;
  }

  .mod-cta > div:nth-child(2)
  {
    text-align: center;
  }

  .mod-cta > div:nth-child(2) a
  {
    display: inline-block;
  }

  .view-site_contact .content-inner
  {
    display: block;
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
    flex-wrap: wrap;
    flex-direction: column-reverse;
    padding-left: 10px;
    padding-right: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  .view-site_contact .content
  {
    width: 100%;
  }

  .site-contact
  {
    margin:0;
  }

  .productdetails, .page-item
  {
    padding-left: 10px;
    padding-right: 10px;
  }

  .view-article .page-item
  {
    display: block;
  }

  .view-article .page-item > .item_img, .view-article .page-item > .item_fulltext
  {
    width: 100%;
    margin-bottom: 2em;
  }

  .view-article .page-item > .item_img
  {
    margin-left: auto;
    margin-right: auto;
    max-width: 250px;
  }

  .sliderpop
  {
    margin-top: 1em;
  }

  .sliderpop, .sliderpop .mod-custom__sliderpop
  {
    position: relative;
    left: auto;
    top: auto;
    display: block;
    max-width: none;
    -webkit-transform: translate(0,0);
    -moz-transform: translate(0,0);
    -ms-transform: translate(0,0);
    -o-transform: translate(0,0);
    transform: translate(0,0);
  }

  .sliderpop .mod-custom__sliderpop, .sliderpop .mod-custom__sliderpop .buttons
  {
    border:none;
    text-align: center;
  }

  .buttons .btn
  {
    margin-bottom: 10px;
  }

  .camera_wrap
  {
    float: none !important;
  }

  .body__home #mainbottom-row
  {
    margin-top: 0;
  }

  .productdetails-view .productWrapper .productRight
  {
       display: block;
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
    flex-wrap: wrap;
  }

  .productdetails-view .productWrapper .productRight > div
  {
    width: 100%;
  }

  .productdetails-view .productWrapper .productRight #contact
  {
    order: 5;
  }

  .googlemapmobile
  {
    display: block;
  }

  .googlemapdesktop
  {
    display: none;
  }

  .body__home #mainbottom-row
  {
    padding-top: 0;
  }
}


/*== Up to 640px ==================================================
====================================================================*/
@media (max-width: 640px) {
  /*contact*/
  .contact_details {
    margin-bottom: 18px;
  }
  .contact_details .contact_details_item {
    width: 100%;
    float: none;
  }
  #content-row {
    padding: 0;
  }
  #content-row .row-fluid [class*="span"] {
    min-height: auto;
  }
  .body__home #content-row .page-featured__home {
    display: none;
  }
  #mainbottom-row {
    padding: 49px 0;
  }

  h2
  {
    font-size: 24px;
  }

  .view-projectlist h2
  {
    text-align: center;
  }
}
/*== Up to 480px ==================================================
====================================================================*/
/* Landscape phones and down */
@media (max-width: 480px) {
  /*contact*/
  .contact_form {
    width: 100%;
  }
  /*registration*/
  .page-registration form input,
  .page-remind form input,
  .page-reset form input,
  .page-login form input,
  .page-login form input,
  .page-profile__edit form input,
  .page-registration form select,
  .page-remind form select,
  .page-reset form select,
  .page-login form select,
  .page-login form select,
  .page-profile__edit form select {
    width: 100%;
  }
  .page-registration form label,
  .page-remind form label,
  .page-reset form label,
  .page-login form label,
  .page-login form label,
  .page-profile__edit form label {
    display: inline-block;
  }
  .pagination ul li {
    display: none;
  }
  .pagination ul li.pagination-prev,
  .pagination ul li.pagination-next {
    display: inline-block;
  }
  /*gallery*/
  .page-gallery .item_img.img-intro {
    float: none;
    margin: 0 0 18px 0;
  }
  .page-gallery ul.gallery .gallery-item {
    text-align: center;
  }
  .page-gallery ul.gallery .gallery-item .item_img {
    float: none;
    margin: 0 0 18px 0 !important;
  }
  .page-gallery ul.gallery .gallery-item a.zoom {
    display: inline-block;
  }
  .img-full__left.span5 {
    width: 100%;
    margin-right: 0;
  }
  /*blog*/
  .page-blog .item_img.img-intro {
    float: none;
    margin: 0 0 18px 0;
  }
  /*archive*/
  .page-archive_filters select {
    display: block;
    width: 100%;
  }
  /*contact*/
  .contact_details .contact_details_item {
    width: 100%;
    float: none;
  }
  /*Modules*/
  /*search*/
  .mod-search__aside .mod-search_searchword {
    width: 100%;
  }
  /*login*/
  .mod-login__aside .mod-login_username,
  .mod-login__aside .mod-login_passwd {
    width: 100%;
  }
}
/*== Up to 340px =====================================================
========================================================================*/
/* Portrait phones */
@media (max-width: 340px) {
  #copyright-row .row-container .mod-footer {
    margin: 10px 0;
  }
}
