html, body {
    background-color: rgb(255, 255, 255);
    height: 100%;
    width: 100%;
    font-family: 'Open Sans', sans-serif;
}

body {
    color: #333;
    text-align: center;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
}

a {
    -webkit-transition: color .5s ease;
    -moz-transition: color .5s ease;
    -ms-transition: color .5s ease;
    -o-transition: color .5s ease;
    transition: color .5s ease;
}

/*
    Page Contents
*/
.page-section {
    margin-top: 20px;
    margin-bottom: 20px;
    width: 100%;
    text-shadow: 1px 1px 2px rgb(179, 179, 179);
}

.page-section.loaded {
    display: block;
}


/*
    Bootstrap Nav Bar
*/
.navbar-transparent {
    background: transparent;
    border: none;
    margin: auto;
    text-shadow: 1px 1px 2px rgb(0, 0, 0);
}

.navbar-transparent .navbar-brand:hover,
.navbar-transparent .navbar-brand:focus {
    color: #fefefe;
    background-color: transparent;
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: #fefefe;
}

.navbar-transparent .navbar-brand {
    color: #fefefe;
    font-family: 'Dancing Script', cursive;
    font-size: 25pt;
}

.navbar-transparent .navbar-brand .slogan {
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-size: 9pt;
    letter-spacing: 4px;
    margin-top: 10px;
}

.navbar-transparent .navbar-nav > li > a,
.navbar-transparent .navbar-nav > li > a:focus {
    color: #ccc;
}

.navbar-transparent .navbar-collapse,
.navbar-transparent .navbar-form {
    background: transparent;
}

.navbar-transparent .navbar-toggle:hover,
.navbar-transparent .navbar-toggle:focus {
    background-color: transparent;
}

.navbar-transparent .navbar-toggle {
    border-color: transparent;
}

.navbar-transparent .navbar-toggle .icon-bar {
    background-color: #fefefe;
}

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
    background-color: transparent;
    color: #fff;
    border-bottom: 2px solid #58b8b8;
}

/* CSS TRANSITIONS*/
.navbar-transparent .navbar-header,
.navbar-transparent .navbar-nav > li {
    -webkit-transition: padding 1s ease;
    -moz-transition: padding 1s ease;
    -ms-transition: padding 1s ease;
    -o-transition: padding 1s ease;
    transition: padding 1s ease;
}

.navbar-transparent {
    -webkit-transition: background 1s ease;
    -moz-transition: background 1s ease;
    -ms-transition: background 1s ease;
    -o-transition: background 1s ease;
    transition: background 1s ease;
}

/* TOGGLE NAV BAR */
.navbar-transparent.toggle-bar .navbar-header,
.navbar-transparent.toggle-bar .navbar-nav > li {
    padding-top: 20px;
    padding-bottom: 20px;
}

.navbar-transparent.toggle-bar .navbar-nav > li {
    padding-left: 8px;
    padding-right: 8px;
}

.navbar-transparent.toggle-bar .navbar-brand {
    font-size: 32pt;
}

.navbar-transparent.toggle-bar .navbar-brand .slogan {
    display: block;
    font-size: 10pt;
}

/* NO TRANS BAR */
.navbar-no-trans {
    background: rgba(0, 0, 0, 0.8);
}

.navbar-no-trans .navbar-nav > li > a,
.navbar-no-trans .navbar-nav > li > a:focus {
    color: #aaa;
}

#mainNav a.lang {
    padding-right: 0;
}

.navbar-nav > li.active {
    height: 35px;
}


/* Footer */
#footer {
    position: relative;
}

#footer a,
#footer a:focus,
#footer a:hover {
    color: #fff;
    text-decoration: none;
}

#footer a {

}


/* Google Map */
#footer #google-map {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#footer a[href^="http://maps.google.com/maps"] {

}

#footer .gmnoprint a, .gmnoprint span, .gm-style-cc {
    display: none !important;
}

#footer .gmnoprint div {
    display: none !important;
}

/* Footer Wrapper */
#footer #footer-wrapper {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    color: #fff;
}

#footer #footer-wrapper #copyrights {
    color: #fff;
    text-align: left;
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    padding-left: 12px;
}

#footer #footer-wrapper #copyrights a {
    color: #ddd;
}

#footer #footer-wrapper #copyrights a:hover {
    color: #58b8b8;
}

#footer #footer-wrapper .contact-form-wrapper {
    background-color: rgba(88, 184, 184, 0.33);
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
}

/* SOCIAL MEDIA */
#footer #footer-wrapper ul.social-media {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 24pt;
    overflow: auto;
    display: inline-block;
}

#footer #footer-wrapper ul.social-media li {
    float: left;
    padding: 5px 15px;
}

#footer #footer-wrapper ul.social-media li a {
    color: #fff;
}

#footer #footer-wrapper ul.social-media li a:hover {
    color: #58b8b8;
}

/* ADDRESS LIST */
#footer #footer-wrapper ul.address-list {
    list-style: none;
    padding: 10px;
    margin: 0;
}

#footer #footer-wrapper ul.address-list li {
    padding: 0 0 5px 5px;
}

#footer #footer-wrapper ul.address-list li i {
    padding-right: 10px;
}

#footer #footer-wrapper ul.address-list li a:hover {
    color: #58b8b8;
}

/* CERTS */
#footer #footer-wrapper ul.address-list li.cert {
    padding: 0 0 5px 5px;
    font-size: 90%;
    margin-top: 8px;
    margin-bottom: 8px;
}

/* COMMON TYPOGRAPHY */
.row.title h2 {
    letter-spacing: 4px;
}

p.info-block {
    font-size: 16pt;
    font-weight: 100;
    text-align: center;
    padding: 5px 40px;
}

/************ About Style **************/
#about.page-section {
    margin-top: 0;
    margin-bottom: 0;
}

#about.page-section > .row {
    background-color: #eee;
    padding-top: 120px;
    padding-bottom: 120px;
}

#about .title,
#about .content {
    margin-bottom: 20px;
}

#about .title {
    color: #666;
}

#about .content p {
    text-align: left;
    font-size: 12pt;
    font-style: italic;
    line-height: 22pt;
    font-weight: 100;
}

/********** Apartments Style ************/
#apartments.page-section {
    margin-top: 0;
    margin-bottom: 0;
}

#apartments .row.intro {
    background-color: #f5f5f5;
}

#apartments .row.intro p {
    line-height: 30pt;
    font-size: 14pt;
    padding: 120px 0;
    font-weight: 100;
}

#apartments.page-section .row.title {
    color: #666;
    margin-top: 20px;
    margin-bottom: 20px;
}

#apartments.page-section .row.title p {
    word-spacing: 2px;
    font-weight: 100;
}

#apartments.page-section .row.dream {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 60px;
}

#apartments.page-section .content h3.title {
    color: #666;
    font-size: 15pt;
    font-weight: 500;
    border-bottom: solid 2px #eee;
    padding-bottom: 10px;
}

#apartments.page-section .content ul.info-list {
    text-align: left;
    list-style: none;
    padding: 0;
    margin: 0;
}

#apartments.page-section .content ul.info-list li {
    padding-top: 5px;
    padding-left: 5px;
    font-weight: normal;
    font-size: 11pt;
    color: #666;
    text-shadow: none;
}

#apartments.page-section .photo-wrapper {
    padding: 4px;
}

#apartments.page-section .photo-view img {
    width: 100%;
    height: 435px;
    object-fit: cover;
    border: solid 3px #58b8b8;
}

#apartments.page-section ul.photo-thumbs {
    list-style: none;
    margin: 0;
    padding: 5px 0;
}

#apartments.page-section ul.photo-thumbs li {
    float: left;
    width: 25%;
}

#apartments.page-section ul.photo-thumbs li img {
    width: 100%;
    height: 96px;
    object-fit: cover;
    border: solid 2px #fff;
    cursor: pointer;
}

#apartments.page-section ul.photo-thumbs li.active img {
    border: solid 2px #58b8b8;
    cursor: default;
}

#apartments.page-section .row.block {
    background-color: #eee;
    padding-top: 40px;
    padding-bottom: 40px;
}

#apartments.page-section .availability_widget {
    float: right;
    display: block;
    font-size: 10pt;
}

/************ Gallery Style ************/
.lg-outer .lg-inner .lg-img-wrap,
.lg-outer .lg-inner .lg-item {
    display: block;
}

#gallery.page-section .gallery-container {
    padding: 20px 5px;
}

#gallery.page-section .gallery-container .gallery-img-container {
    padding-bottom: 15px;
}

#gallery.page-section .gallery-container .gallery-thumb {
    border-radius: 5px;
    width: 100%;
    object-fit: cover;
    height: 200px;
    border: solid 3px #fff;
}

#gallery.page-section .gallery-container .gallery-thumb.loaded {
    border: solid 3px #58b8b8;
}

#gallery.page-section .row.title h2 {
    color: #666;
}

#gallery.page-section .row.content h3 {
    color: #666;
    font-size: 15pt;
    font-weight: 500;
}

/************ Home Style ***************/
/*
    Carousel
*/
.carousel, .item, .active {
    height: 100%;
}

.carousel-inner {
    height: 100%;
}

.fill {
    width: 100%;
    height: 100%;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

.carousel-fade .carousel-inner .item {
    opacity: 0;
    -webkit-transition: opacity 1s ease;
    -moz-transition: opacity 1s ease;
    -o-transition: opacity 1s ease;
    transition: opacity 1s ease;
}

.carousel-fade .carousel-inner .active {
    opacity: 1;
}

.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
    left: 0;
    opacity: 0;
    z-index: 1;
}

.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
    opacity: 1;
}

.carousel-fade .carousel-control {
    z-index: 2;
}


/*
    Audio JS
*/
.audiojs {
    display: none;
}

/*
    Responsive Media
*/
@media (max-width: 670px) {
    .navbar-transparent {
        width: 100%;
    }
}

@media (max-width: 380px) {
    .page-section {
        padding: 40px 5px;
    }
}

@media (min-width: 768px) {
    .navbar-nav {
        float: right;
        margin: 0;
    }

    .navbar-nav > li > a {
        padding-top: 15px;
        padding-bottom: 0px;
    }
}

@media (min-width: 900px) {
    .navbar-header, #mainNav {
        padding: 0px 50px;
    }
}

@media (min-width: 1920px) {
    html, body {
        background-color: #dedede;
    }
    .container-fluid {
        background-color: #fff;
        max-width: 1920px;
    }
}
