/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size:14px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */


.contained{
  width:80%;
  margin:auto;
  max-width:720px;
}

.dark{
  background-color:#000;
}

#top-spacer{
  height:60px;
}

#header-left{
  width:50%;
  float:left;
}

#header-right{
  width:50%;
  float:right;
}

  #header-left img, #header-right img{
    width:100%;
  }

@media screen and (max-width:720px){
  .contained{
    width:90%;
  }

  #header-left, #header-right{
    width:100%;
    float:none;
  }
}
#main-nav{
  display:block;
}

@media screen and (max-width:480px){
  .contained{
    width:94%;
  }
}

nav{
  padding:30px 0;
  background:#ccc;
}

  nav#main-nav{
    position:absolute;
    width:100%;
  }

  nav ul{
    list-style:none;
    padding:0;
    margin:0;
    text-align:center;
  }

    nav ul li{
      display:inline-block;
      padding:0 2%;
    }

      nav ul li a{
        font-size:14px;
        text-transform:uppercase;
        color:#333;
        text-decoration:none;
        letter-spacing:1px;
      }

        nav ul li a.active{
          color:#6491bd;
        }
        #main-nav ul li.mobile-icons{
          display:none;
        }

#scroll-top{
  display:inline-block;
  width:15px;
}

@media screen and (max-width:640px){

  .arrow-scroll-top{
    display:none !important;
  }

  #main-nav{
    display:block;
    position:fixed;
    width:100%;
  }

  #main-nav{
    padding:8px 0;
  }

  #main-nav ul{

  }

    #main-nav ul li{
      display:none;
      padding: 10px 0;
      background: url(../img/mobile_nav_sep.jpg) no-repeat center bottom;
    }

      #main-nav ul li:first-child, #main-nav ul li:last-child{
        background:none;
      }

    #main-nav.show-mobile-nav ul li{
      display:block;
    }

    #main-nav ul li.mobile-icons{
      display:block !important;
    }

      #main-nav ul li.mobile-icons a{
        cursor:pointer;
        display:none;
      }

        #main-nav ul li.mobile-icons a.active{
          display:inline-block;
        }

      #main-nav ul li.mobile-icons .close-x{
        display:inline-block;
        width:24px;
      }

      #main-nav ul li.mobile-icons .menu-open{
        display:inline-block;
        width:30px;
      }
}

.section-header{
  text-transform: uppercase;
  text-align: center;
  display:inline-block;
  margin:auto;
  letter-spacing:1px;
}

.text-callout{
  text-align:center;
  padding:60px 0;
}

  .text-callout h2{
    text-align:center;
    font-size:29px;
    font-weight:normal;
    line-height:40px;
    color:#005b9f;
    margin-top:0;
    margin-bottom:12px;
    font-family: "bodoni-urw";
    font-style:normal;
  }

    .text-callout h2 i{
      font-style:oblique;
    }

  .text-callout span{
    font-style:normal;
    letter-spacing:1px;
  }

.img-callout{

}

  .img-callout img{
    width:100%;
  }

@media screen and (max-width:640px){
  .text-callout{
    padding:30px 0;
  }
    .text-callout h2{
      font-size:14px;
      line-height:19px;
      margin-bottom:0px;
    }

    .text-callout span{
      font-size:8px;
    }
}

/*FLOOR PLANS*/
#floorplans{
  padding:50px 0;
}

#plan-names{
  list-style:none;
  margin:30px 0 0 0;
  padding:0;
  text-align:center;
}

  #plan-names li{
    display:inline-block;
    padding:0 2%;
    line-height:20px;
    border-right:1px solid #999;
  }

    #plan-names li:last-child{
      border-right:none;
    }

    #plan-names li a{
      text-align:center;
      font-family: "bodoni-urw";
      font-size:29px;
      text-decoration:none;
      color:#333;
    }

      #plan-names li a:hover{
        color:#ccc;
      }

      #plan-names li a.active{
        color:#6491bd;
      }

  #floorplan{
    transition: height .5s;
  }

    #floorplan.active{
      margin-top:50px;
    }

    #floorplan .content{
      display:none;
    }

      #floorplan.active .content{
        display:block;
      }

  #planImg{
    width:75%;
    float:left;
  }

    #planImg img{
      width:100%;
    }

  #planDetail{
    width:20%;
    float:right;
    text-transform: uppercase;
    letter-spacing:1px;
  }

    #plan-nav-left, #plan-nav-right{
      width:12px;
      cursor:pointer;
      display:inline-block;
    }

    #plan-nav-left{
      margin-right: 6px;
    }

    #plan-zoom{
      width:20px;
      cursor:pointer;
      margin-left:20px;
      display:inline-block;
    }

    #planDetail .left{

    }

    #planDetail .right{
      margin-top:20px;
    }

    #planDetail span{
      display:block;
      margin-bottom:2px;
    }

      #planDetail span.sqft{
        font-weight:bold;
        margin-top:25px;
      }

      #planDetail span.bedrooms{
        font-weight:bold;
        margin-bottom:10px;
      }

    #planDetail .location{
      width:100%;
      margin-bottom:20px;
    }

    #plan-expand{
      background:#ccc;
      width:100%;
      position:fixed;
      z-index:10;
      top:0;
      left:0;
      background: #ccc;
    }

      #plan-expand .controls{
        width:100%;
        height:50px;
        line-height:50px;
        background:#fff;
        margin-bottom:50px;
        position:relative;
        z-index:15;
      }

      #plan-expand .zoom-in, #plan-expand .zoom-out, #plan-expand .close-x{
        width:14px;
        display:inline-block;
        cursor:pointer;
        margin-left:5px;
      }

      #plan-expand .zoom-out{
        margin-left:10px;
      }

      #plan-expand .close-x{
        float:right;
        margin:0 5px 0 0;
        font-size:14px;
        width:auto;
      }

        #plan-expand .close-x img{
          width: 14px;
          margin-top: -5px;
          margin-left: 3px;
        }

      #zoomedPlan{
        display:block;
        margin:auto;
        overflow:hidden;
      }

  .ceiling-option{
    font-weight: bold;
    margin:10px 0 !important;
  }

  .level-label{
    text-transform: uppercase;
    display:block;
    margin:10px 0 !important;
  }

  .north-arrow{
    width:20px;
  }

@media screen and (max-width:900px){
  #plan-names li a{
    font-size:24px;
  }
}

@media screen and (max-width:720px){
  #plan-names li a{
    font-size:18px;
  }
}

@media screen and (max-width:640px){
  #plan-names li a{
    font-size:16px;
  }

  #planImg{
    width:100%;
    margin:0 auto 30px auto;
  }

  #planDetail{
    width:100%;
    margin:auto;
  }

  #planDetail .left{
    width:49%;
    float:left;
    margin-top:20px;
  }

  #planDetail .right{
    width:49%;
    float:right;
    margin-top:20px;
  }
}

@media screen and (max-width:500px){
  #plan-names li{
    padding: 0 1.5%;
  }

    #plan-names li a{
      font-size:14px;
    }
}

/*AMENITIES*/
#amenities{
  padding:50px 0;
  font-size:12px;
  color:#fff;
  text-transform:uppercase;
}

.amenities-left{
  width:48%;
  float:left;
}

.amenities-right{
  width:48%;
  float:right;
}

  .amenities-left span, .amenities-right span{
    letter-spacing:1px;
  }

  #amenities ul{
    list-style:none;
    margin:10 0 0 0;
    padding:0;
  }

    #amenities ul li{
      color:#6491bd;
      font-size:18px;
      line-height:24px;
      font-family: "bodoni-urw";
      text-transform: none;
    }

@media screen and (max-width:640px){
  .amenities-left, .amenities-right{
    float:none;
    width:100%;
  }

  .amenities-right{
    margin-top:30px;
  }
}


#team-callouts{
  padding:50px 0;
}

#team .callout-box{
  width:33%;
  float:left;
  text-align:center;
}

#team .callout-box.middle{
  width:32%;
  border-left:1px solid #000;
  border-right:1px solid #000;
  padding:20px 0;
}

#team .callout-box .sf{
  max-width:160px;
  width:70%;
  margin:20px auto;
  cursor:pointer;
}

#team .callout-box .atproperties{
  max-width:160px;
  width:70%;
  margin:19px auto 0 auto;
  cursor:pointer;
}

#team .callout-box .bh{
  max-width:200px;
  width:70%;
  margin:35px auto 0 auto;
  cursor:pointer;
}

#team .callout-box .sf:hover img, #team .callout-box .atproperties:hover img, #team .callout-box .bh:hover img, #team-callouts.hasActive .sf img, #team-callouts.hasActive .atproperties img, #team-callouts.hasActive .bh img{
  opacity:.4;
}



#team .callout-box .sf img, #team .callout-box .atproperties img, #team .callout-box .bh img{
  width:90%;
}



#team .callout-box .selected img{
  opacity:1 !important;
  width:100% !important;
  transition: all .2s linear;
  /*margin-left: -5%;
  margin-top: -2%;*/
}

  #team .callout-box .sf.selected{
    margin:16px auto;
  }

  #team .callout-box .sf.selected img, #team .callout-box .atproperties.selected{
    /*max-width:180px;*/
  }

  #team .callout-box .bh.selected{
    max-width:220px;
  }

  #team .content{
    background:#ccc;
    padding:50px 0;
    font-size:18px;
    line-height:24px;
    font-family: "bodoni-urw";
    transition: height .3s;
    display:none;
  }

    #team .content .contained{
      display:none;
    }

      #team .content .contained.active{
        display:block;
      }

    #team .content .close-x{
      font-size:28px;
      float:right;
      cursor:pointer;
      margin-left:8px;
      margin-bottom:8px;
      margin-right:-75px;
    }

@media screen and (max-width:900px){
  #team .content .close-x{
    margin-right:-50px;
  }
}

@media screen and (max-width:720px){
  #bio-close{
    display:none !important;
  }
}

@media screen and (max-width:420px){
  #team .callout-box .atproperties{
    margin:12px auto 0 auto;
  }

  #team .callout-box .bh {
    margin: 29px auto 0 auto;
  }
}

@media screen and (max-width:380px){
  #team .callout-box .atproperties{
    margin:7px auto 0 auto;
  }

  #team .callout-box .bh {
    margin: 25px auto 0 auto;
  }
}

#contact{
  padding:50px 0;
}

input, textarea{
  width:100%;
  height:auto;
  background:#000;
  border:1px solid #ccc;
  margin-bottom:13px;
  color:#fff;
  line-height:14px;
  -webkit-appearance:none;
  border-radius:0;
  outline:none;
  padding:11px;
}

input[type="submit"]{
  width:auto;
  display:inline-block;
  background:#fff;
  color:#000;
  margin-bottom:0;
}

textarea{
  height:135px;
}

input:focus, textarea:focus{
    outline: none;
}

#contactErrors{
  margin-top:15px;
  font-size:12px;
  color:#fff;
}

#contact input.contact-form-error, #contact textarea.contact-form-error{
  border:1px solid #ccc;
}

#contact input.contact-form-valid, #contact textarea.contact-form-valid{
  background:#111;
}

#contactInvalid{
  display:none;
  color:#fff;
}

#contactSuccess{
  color:#fff;
  display:none;
  padding:30px 0;
  text-align:center;
  font-size:18px;
}
@media screen and (max-width:900px){
  input, textarea{
    padding:2%;
    width:96%;
  }
}

@media screen and (max-width:640px){
  input{

  }

  textarea{
    height:56px;
  }

  input, textarea{
    line-height:16px;
  }
}


footer{
  text-align:center;
  padding:50px 0;
}

  footer span{
    letter-spacing:1px;
  }

footer .sf{
  width:112px;
  margin:20px auto;
}

footer .atproperties{
  width:112px;
  margin:25px auto 0 auto;
}

footer .fh{
  width:40px;
  margin:25px auto 0 auto;
}

footer.sf img, footer .atproperties img, footer .fh img{
  width:100%;
}


@media screen and (max-width:640px){
  footer{
    font-size:8px;
  }

    footer .sf{
      width:50px;
    }

    footer .atproperties{
      width:50px;
    }

    footer .fh{
      width:20px;
    }
}





[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
  display: none !important;
}





/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
