/* Header and spacing at top
----------------------------------------------------------------------------------------------------*/
body, html {
  margin:0px;
  height: 100%;
}
body {
    background: #FFFFFF;
    color: #333333;
    font-family: 'Univers45',Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 24px;
    margin: 0;
    overflow-y: scroll;
    padding: 0;
}
article, aside, figcaption, figure, footer, header, nav, section {
    display: block;
}   
.logo-zone {
  position: fixed;
  width: 100%;
  z-index: 200;
  top:0px;
}
body.admin-menu .logo-zone {
  top:20px;
}
/* Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

.clearfix:after {
  clear: both;
  content: ' ';
  display: block;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  width: 0;
  height: 0;
}
/* Containers
----------------------------------------------------------------------------------------------------*/

.wrap {
  margin:0;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -80px;
}

.wrap:after {
  content: "";
  display: block;
  height:80px;
}

footer {
  height: 56px;
  margin:0px;
  margin: -56px 0 0 0;
  margin-top:24px;
}

.logo-wrapper {
  background:#FFF;
  padding:0;
}

.stripe {
  height:20px;
  background-color:#000;
}

.stripe h2 {
    position: relative;
    z-index: 1;
}

.title-wrapper {
  border-bottom:1px solid #999;
  border-top:1px solid #999;
  padding-top:15px;
  padding-bottom:16px;
  display: block;
}

#container {
  padding-top:76px;
}

.container-16 {
  margin-left: auto;
  margin-right: auto;
  width: 960px;
}

#content {
    width: 768px;
    float: left;
}
#content > .inner {
  padding-top:8px;
  width: 576px;
  padding-bottom:24px;
}
.full-width #content {
  width: auto;
  float: none;
}
.full-width #content > .inner {
  width: auto;
}

/* responsive images */
#content img {
  max-width: 100%;
  height: inherit;
}

#sidebar-first {
    width: 192px;
    float: right;
}

header, .region-highlighted {
    position: relative;
}

.region-search {
  position: absolute;
  font-size: 13px;
  right:0px;
  top:18px;
  min-width: 300px;
  text-align: right;
}

.section-collapsible {
  position: fixed;
  bottom: 0px;
  width: 100%;
  z-index:40;
}

/* User picture absolute positioning */

/* User picture placement */

body.page-user #main {
  position: relative;
}

body.page-user .user-picture {
  width: 64px;
  height: 64px;
  position: absolute;
  right:0px;
  top:8px;
}

/*  RESPONSIVE 1024
----------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 1014px) {
  .container-16 {
    width:640px;
  }
  #content {
    width: auto;
  }
  #content > .inner {
    width: 504px;
  }
  #sidebar-first {
    width: 128px;
    float: right;
    margin:0 0 32px;
    position: relative;
    z-index: 3;
  }
  #mini-panel-meganav h2.pane-title {
    position: relative;
  }
  #mini-panel-meganav .pane-content {
    margin-left:0px !important;
  }
  #content .panels-flexible-region, 
  #content .panels-flexible-column {
    float:none !important;
    width: auto !important;
  }

}

/*  RESPONSIVE 320
**  For portrait mode only (landscape starts at 480px)
----------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 479px) {
  body {
    margin: 0 4px;
  }
  .logo-wrapper,
  .stripe {
    margin-left: -4px;
    padding-left: 4px;
  }
  .container-16 {
    width:304px;
  }
  #content > .inner {
    width: 304px;
  }
  #sidebar-first {
    width: 304px;
    float: none;
    margin:0 0 32px;
    position: relative;
    z-index: 3;
  }

  .user-picture {
    display: none;
  }
}