
/* Switcher Class
-------------------------------------------*/


.desktop {
    display: block !important;
}

.desktop-inline {
    display: inline-block !important;
}

.mobile {
    display: none !important;
}

#mobile-nav-button {
    position: absolute;
    top: 20px;
    right: 10px;
    width: 40px;
    height: 40px;
    display: block;
    z-index: 10000;
}

#mobile-nav-button i {
    font-size: 2.5rem;
    color: #fff;
    text-align: center;
}

/* Hide these from the desktop devices
-------------------------------------------*/


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

    /* Switcher Class
    -------------------------------------------*/
    .desktop {
        display: none !important;
    }

    .desktop-inline {
        display: none !important;
    }

    .mobile {
        display: block !important;
    }

    /* Global Elements
    -------------------------------------------*/
    html {
        position: relative;
        max-width: 100%;
        width: 100%;
        overflow: hidden;
        height: auto;
        overflow-y: scroll;
    }

    body {
        width: 100%;

        max-width: 100%;
        position: absolute;
        top: 0;
        margin-right: auto;
        margin-left: auto;
        overflow: hidden;
        border-top: 90px solid transparent;
    }

    body.index {
        border-top: 0 !important;
    }

    body.un-selected {
        height: 100vh;
    }

    p {
        padding-right: 10px;
        padding-left: 10px;
    }

    .inner-wrapper, .wrapper {
        width: 100%;
        max-width: 100%;
        position: relative;
        margin-right: auto;
        margin-left: auto;
    }

    .one-half, .one-third, .two-thirds, .one-half-true, .one-fourth {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }

    .four-fifths {
        width: 100%;
    }

    .left, .right {
        float: none;
        padding-left: 0;
        padding-right: 0;
    }

    .inner-wrapper {
        padding-right: 0;
        padding-left: 0;
    }

    .button {
        max-width: 240px;
        font-size: .875rem;
    }

    .featured-button {
        bottom: -80px;
    }

    .fancy.small span:before,
    .fancy.small span:after {
        content: "";
        position: absolute;
        height: 2px;
        background: #E1BE63;
        top: 50%;
        width: 40px;
    }

    .fancy span:before {
        right: 100%;
        margin-right: 15px;
    }

    .fancy span:after {
        left: 100%;
        margin-left: 15px;
    }

    /* Layout
    ------------------------------------------*/
    .page-hero h2.hero-title {
        font-size: 5rem;
        line-height: 1em;
    }

    .page-hero h2 span.heading-border {
        top: 90%;
    }


    #gallery img {
        opacity: 1;
    }

    #villa-features .one-half.text h3 {
        padding-top: 20px;
    }

    #villa-features .one-half.text {
        padding-left: 20px;
        padding-right: 20px;
    }
    #villa-features ul {
        padding-left: 30px;
        list-style-type: disc;
    }

    #gallery a.various {
        width: 50%;
    }

    .one-fourth {
        width: 100% !important;
    }


    /* Header
   -------------------------------------------*/
    #header {
        top: 0;
        bottom: inherit;
        -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .18);
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .18);
        z-index: 1000000;
    }

    #header #logo {
        width: 120px;
        height: 80px;
    }

    #header.home.scrolling #logo {
        transform: translateX(-50%) translateY(-9%);
    }

    #header #book-table {
        font-size: .875rem;
    }

    /* Navigation
    -------------------------------------------*/
    #nav {
        width: 50%;
        position: fixed;
        top: 90px;
        right: 0;
        background: whitesmoke;
        -webkit-transition: all 150ms ease-in-out;
        -moz-transition: all 150ms ease-in-out;
        -ms-transition: all 150ms ease-in-out;
        -o-transition: all 150ms ease-in-out;
        transition: all 150ms ease-in-out;
        transform: translateX(100%);
        -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, .18);
        box-shadow: 0 0 4px 0 rgba(0, 0, 0, .18);
        min-height: 100vh;
        padding-right: 0;
        text-align: center;
    }

    #nav.active {
        transform: translateX(0);
    }

    #nav #nav-logo {
        position: relative;
        float: none;
        height: 100%;
        position: relative;
        float: right;
        background: url(../img/nav-logo.png);
        background-size: auto 45%;
        background-position: center center;
        background-repeat: no-repeat;
        opacity: .6;
    }

    #nav .nav-list {
        position: relative;
        width: 100%;
        top: 0;
    }

    #nav a {
        width: 100%;
        font-size: 1rem;
        line-height: 1.2em;
        padding-top: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid #ccc;
        height: auto;
    }

    #nav ul#nav-list li a {
        color: #364959;
    }

    body#home-page #header ul.dropdown,
    #header ul.dropdown {
        background-color: rgba(54, 73, 89, 1);
    }

    #nav ul#nav-list > li {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        border-bottom: 1px solid #eee;
    }

    #nav ul {
        list-style-type: none;
        padding: 0;
        margin: 0 auto;
    }

    #nav ul > li {
        padding: 0;
        margin: 0;
        position: relative;
    }

    #nav ul > li > a {
        font-size: 1.4rem;
        padding-top: 10px;
        padding-bottom: 10px;
        display: block;
        width: 100%;
        height: 44px;
    }

    #nav ul#nav-list li ul li a {
        color: #fff;
        font-size: .875rem;
        border-bottom: 1px solid #aaa;
    }

    #nav ul#nav-list li ul li:last-child a {
        border-bottom: none;
    }

    span.drop-down-icon {
        position: absolute;
        right: 0px;
        top: 0;
        line-height: 44px;
        width: 35px;
        color: rgba(54, 73, 89, 1);
        -webkit-transition: all 250ms ease-in-out;
        -moz-transition: all 250ms ease-in-out;
        -ms-transition: all 250ms ease-in-out;
        -o-transition: all 250ms ease-in-out;
        transition: all 250ms ease-in-out;
    }

    span.drop-down-icon.active {
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    span.drop-down-icon i {
        font-size: .775rem;
        line-height: 44px;
        color: rgba(54, 73, 89, 1);
    }

    #nav ul.dropdown {
        height: auto;
        padding: 0;
        overflow: hidden;
        max-height: 0;
        margin: 0 auto;
        -webkit-transition: all 250ms ease-in-out;
        -moz-transition: all 250ms ease-in-out;
        -ms-transition: all 250ms ease-in-out;
        -o-transition: all 250ms ease-in-out;
        transition: all 250ms ease-in-out;
    }

    #nav ul.dropdown.active {
        max-height: 1000px;
    }

    /* Home Styles
    -------------------------------------------*/
    #hero-slider {
        display: none;
    }

    #hero .flex-direction-nav {
        display: none !important;
    }

    #hero {
        min-height: 80vh;
    }

    #hero-content {
        padding: 15% 15px 0 15px;
        background: transparent;
        text-align: center;
    }

    #hero-content h2 {
        font-size: 3rem;
        color: #fff;
        text-align: center;
        text-shadow: 0 1px 2px #333;
    }

    #hero-content h4 {
        font-size: 1.4rem;
        color: #fff;
        text-align: center;
        text-shadow: 0 1px 2px #333;
    }

    #hero .one-half {
        width: 100%;
        height: 50%;
        display: block;
        float: none;
        opacity: 1;
    }

    #hero .one-half.selected {
        height: 100%;
        opacity: 1;
    }

    #hero .one-half.selected .hero-content {
        top: 50%;
    }

    #hero .one-half.slide-hide {
        width: 100%;
        height: 0;
        overflow: hidden;
    }

    #hero-logo {
        width: 95%;
    }

    #hero .hero-content h2 {
        font-size: 2.4rem;
        -webkit-transition: all 600ms ease-in-out;
        -moz-transition: all 600ms ease-in-out;
        -ms-transition: all 600ms ease-in-out;
        -o-transition: all 600ms ease-in-out;
        transition: all 600ms ease-in-out;
    }

    #hero .hero-content h4 {
        font-size: 1.2rem;
        -webkit-transition: all 600ms ease-in-out;
        -moz-transition: all 600ms ease-in-out;
        -ms-transition: all 600ms ease-in-out;
        -o-transition: all 600ms ease-in-out;
        transition: all 600ms ease-in-out;
    }

    #hero .one-half.selected h2 {
        font-size: 4.2rem;
    }

    #hero .one-half.selected h4 {
        font-size: 1.2rem;
    }

    #header .mobile-icon {
        color: #fff;
        width: 40px;
        height: 60px;
        line-height: 60px;
        text-align: center;
        float: left;
        font-size: 30px;
        display: block;
    }

    img#location-choice {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        width: 200px;
        z-index: 100000;
        opacity: .85;
    }

    img#location-choice.slide-hide {
        opacity: 0;
        transform: translateY(-5000px);
    }

    #our-portfolio h2 {
        line-height: 1.2em;
        font-size: 3.1rem;
    }

    #our-portfolio {
        padding-top: 20px;
        padding-bottom: 0;
        padding-left: 0;
        padding-right: 0;
    }

    #our-portfolio .three-fifths,
    #our-portfolio .two-fifths {
        width: 100%;
        height: 40vh;
    }

    #our-portfolio .row {
        padding-top: 0;
        padding-bottom: 0;
    }

    .portfolio-block .property-info {
        width: 100%;
        max-width: 100%;
    }

    #lease-with-us {
        padding-top: 20px;
    }

    #lease-with-us h2 {
        font-size: 2rem;
    }

    #lease-with-us .lease-cities {
        margin-top: 0;
    }

    #lease-with-us a.one-third {
        width: 50%;
        padding-top: 50%;
    }

    #lease-with-us .lease-cities .inner-container {
        background: rgba(0, 0, 0, .3);
    }

    #lease-with-us a.one-third h3 {
        font-size: 1.1rem;
    }

    #from-the-start {
        padding-top: 30px;
    }

    #from-the-start h2 {
        font-size: 3.1rem;
    }

    #from-the-start h3 {
        padding-left: 10px;
        padding-right: 10px;
    }

    /* Home Styles
    -------------------------------------------*/
    #home-services h3 {
        width: 90%;
    }

    #home-features {
        height: 100vh;
        background-image: url(../img/home-intro-bg.jpg);
        transform: scale(1, 1);
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        overflow: hidden;
    }

    #home-features img.home-intro-text {
        width: 95%;
    }

    #menu-features #menu-features-container {
        height: auto;
        padding: 0;
    }

    #menu-features a.one-fourth {
        position: relative !important;
        display: block;
        float: none;
        left: 0;
        width: 100%;
        height: 33vh;
    }

    #menu-features a.one-fourth.first {
        left: 0;
        -webkit-clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
        clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
        z-index: 100;
    }

    #menu-features a.one-fourth.second {
        left: 0;
        z-index: 101;
        -webkit-clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
        clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
    }

    #menu-features a.one-fourth.third {
        left: 0;
        z-index: 102;
        -webkit-clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
        clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
    }

    #menu-features a.one-fourth.last {
        left: 0;
        -webkit-clip-path: polygon(30% 0, 0 100%, 100% 100%, 100% 0);
        clip-path: polygon(30% 0, 0 100%, 100% 100%, 100% 0);
        z-index: 103;
        -webkit-clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
        clip-path: polygon(0% 0, 0 100%, 100% 100%, 100% 0);
    }

    #home-actions .one-third {
        width: 33%;
        float: left;
        position: relative;
        padding-left: 5px;
        padding-right: 5px;
    }

    #home-actions .one-third img {
        width: 80%;
        display: block;
        margin-right: auto;
        margin-left: auto;
    }

    #home-actions h2 {
        font-size: .775rem;
    }

    #home-intro-banner h2 {
        font-size: 2.2rem;
        line-height: 1.2em;
        padding-left: 20px;
        padding-right: 20px;
    }

    #home-intro-banner {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    #home-promo .promo-row .text-box {
        padding-bottom: 30px;
    }

    /* Page Layouts
    ------------------------------------------*/
    hr.clear-side {
        width: 33%;
        margin-right: auto;
        margin-left: auto;
    }

    .page-header h3 {
        width: 75%;
        padding: 15px;
    }

    #regional-team ul li .area {
        font-size: .875rem;
    }

    #regional-team h4 {
        line-height: 1.2em;
    }

    .leadership .bio-block h2 {
        padding-top: 10px;
    }

    .leadership .bio-link, .leadership .bio-name, .leadership .job-title {
        text-align: center;
        display: block;
    }

    #main-container.overview, #main-container.contained {
        padding-left: 0;
        padding-right: 0;
    }

    #main-container .content-container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .asset-icon-blocks .one-fourth {
        width: 48%;
        background: #364959;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        padding-top: 50%;
        position: relative;
        margin-left: 1%;
        float: left;
        margin-right: 1%;
        margin-bottom: 1%;
        margin-top: 1%;
        box-shadow: 3px 6px 16px 0 rgba(115, 115, 115, .5);
        -webkit-box-shadow: 3px 6px 16px 0 rgba(115, 115, 115, .5);
    }

    #services .services-container .row {
        float: none;
    }

    #services .services-container .row .one-half.true {
        width: 100%;
    }

    #services .services-container .row .one-half.image-box {
        padding-top: 75%;
    }

    #services .services-container .row .one-half.text-box {
        position: static;
        padding: 20px;
        padding-bottom: 40px;
    }

    #services .services-container .row .one-half.text-box h2 {
        text-align: center;
        padding-top: 30px;
    }

    #history-container ul li {
        width: 98%;
        float: none;
        padding-left: 0;
        margin: 0 auto;
        display: block;
    }

    /* Property Map
    -------------------------------------------*/
    #property-filter-container #property-selector {
        width: 100%;
    }

    #property-select {
        padding-top: 10px;
        padding-right: 10px;
    }

    #property-selector .two-fifths {
        float: left;
    }

    #property-selector .three-fifths {
        float: right;
    }

    #property-filter-container #property-selector h3 {
        font-size: 1.4rem;
        text-align: left;
        padding-left: 5px;
        padding-bottom: 0;
        padding-top: 5px;
    }

    #property-filter-container #property-selector span.note {
        text-align: left;
        padding-left: 5px;
    }

    #property-filter-container #property-selector span.note {
        font-size: .675rem;
    }

    #property-filter-container #property-selector select {
        margin-bottom: 10px;
        width: 72%;
        float: left;
    }

    #property-filter-container #property-selector input[type="button"] {
        width: 25%;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 8px;
        float: right;
    }

    #properties #map-container {
        position: relative;
        height: 80vh;
        width: 100%;
    }

    #properties .property-card {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }

    #properties #property-container {
        border-top: none;
        height: auto;
    }

    #properties #property-container .three-fifths {
        width: 100%;
        text-align: center;
    }

    .property-card .property-info h2 {
        font-size: 3rem;
    }

    .property-card .property-info {
        padding-left: 0;
        padding-top: 20px;
    }

    .property-card .property-info .three-fifths {
        width: 100%;
        text-align: center;
    }

    .property-card .property-image {
        width: 100%;
    }

    /* About Us
    -------------------------------------------*/
    #info-content img.one-half {
        width: 85%;
        margin-right: auto;
        margin-left: auto;
        display: block;
        text-align: center;
    }

    #info-content .one-half.text-box {
        padding-left: 0;
    }

    #info-content .one-half.text-box.right {
        padding: 20px;
    }

    #info-content .one-half.text-box.left {
        padding: 20px;
    }

    #bottom-callout.quotes-roll {
        height: 75vh;
    }

    #bottom-callout.quotes-roll p {
        font-size: 1.4rem !important;
    }

    #photo-gallery a.g-lightbox {
        width: 50%;
        padding-top: 50%;
    }

    #info-content p {
        text-align: center;
    }

    /* Menu
    -------------------------------------------*/
    .menu-header h2 {
        font-size: 1.5rem;
    }

    #menu-container h2.fancy {
        font-size: 1.6rem;
    }

    .menu-header .cross {
        -webkit-transition: all 600ms ease-in-out;
        -moz-transition: all 600ms ease-in-out;
        -ms-transition: all 600ms ease-in-out;
        -o-transition: all 600ms ease-in-out;
        transition: all 600ms ease-in-out;
        font-weight: 200;
        width: 30px;
        height: 30px;
        background-image: url(../img/cross-icon.png);
        background-size: 30px 31px;
        background-position: center center;
        position: absolute;
        right: 10%;
        top: 52%;
        -moz-transform: rotate(45deg) translateY(-50%);
        -webkit-transform: rotate(45deg) translateY(-50%);
        -o-transform: rotate(45deg) translateY(-50%);
        -ms-transform: rotate(45deg) translateY(-50%);
        transform: rotate(45deg) translateY(-50%);
        z-index: 104;
    }

    /* Location
    -------------------------------------------*/
    #location-section {
        padding-top: 0;
        padding-bottom: 0;
    }

    #location-section .three-fourths {
        position: static;
        width: 100%;
        height: 80vh;
    }

    #location-section .one-fourth {
        position: static;
        width: 100%;
        padding-top: 80px;
    }

    /* Top Golf
    -------------------------------------------*/
    #top-golf-intro img {
        width: 66%;
        margin-right: auto;
        margin-left: auto;
        text-align: center;
    }

    #top-golf-intro h3 {
        font-size: 2.2rem;
    }

    .top-golf-box {
        min-height: 0;
    }

    .top-golf-box .one-third {
        padding: 20px;
        width: 80%;
        margin-top: 40px;
        margin-bottom: 40px;
    }

    .top-golf-box .one-third.right {
        position: relative;
        right: 0;
        transform: translateX(0) translateY(0);
    }

    .top-golf-box .one-third.left {
        position: relative;
        left: 0;
        transform: translateX(0) translateY(0);
    }

    .top-golf-box .one-third h2 {
        text-align: center;
    }

    #top-golf-intro h3 {
        width: 90%;
    }

    #top-golf-box-3 .additional-info h3 {
        font-size: 2.2rem;
    }

    #top-golf-callout h2 {
        line-height: 1.1em;
    }

    /* Footer
    -------------------------------------------*/
    footer#footer {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 50px;
        padding-left: 30px;
        position: relative;
    }

    #footer #foot-brand {
        text-align: center;
    }

    #footer #foot-brand img {
        display: block;
        text-align: center;
        margin-right: auto;
        margin-left: auto;
    }

    #footer #hours-block {
        border-right: 0;
        border-left: 0;
    }

    #footer #hours-block #hours {
        width: 100%;
    }

    #footer .mobile-break {
        height: 0;
        line-height: 0;
        overflow: hidden;
        width: 100%;
    }

    #footer #hours-block .address {
        line-height: 1.4em;
        margin-bottom: 30px;
    }

    #footer p#hours {
        font-size: .8rem;
    }

    #footer #hours-block span.foot-name {
        font-size: 2rem;
        line-height: 1.4em;
    }

    #footer .policy-contact {
        display: none;
    }

    #footer .copy {
        width: 100%;
        float: none;
        text-align: center;
    }

    #footer .foot-link.copyright {
        color: #fff;
        float: left;
        font-size: .875rem;
        display: block;
        position: absolute;
        bottom: 5px;
        left: 5px;
    }

    #footer .foot-fair {
        height: 25px;
        float: right;
        float: none;
        display: block;
        position: absolute;
        bottom: 5px;
        right: 5px;
    }

    #footer a.foot-link {
        line-height: 25px;
        font-weight: 400;
        color: #fff;
        letter-spacing: .02em;
        font-size: 1rem;
        text-transform: uppercase;
        text-shadow: 0 1px 1px #333;
        font-size: .9rem;
        float: none;
        display: inline-block;
        text-align: center;
    }

    #sub-footer {
        position: relative;
    }

    #sub-footer span {
        width: 100%;
    }

    .designed-by {
        position: absolute;
        right: 10px;
        top: 7px;
        font-size: .875rem;
        color: #fff;

    }

    .about-logo {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }

    #list-services ul {
        padding-left: 0;
    }


}
