/* =Ace Digital Theme Overrides
-------------------------------------------------------------- */

/* =Fonts
-------------------------------------------------------------- */

/* =Elements
-------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6, p, ul, li, a {
    color: #4A4A4A;
}

h1 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 800;
    font-size: 40px;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 0px;
    position: relative;
    max-width: 230px;
}

h1::before {
    width: 3px;
    height: 30px;
    background: #4A4A4A;
    content: '';
    display: block;
    position: absolute;
    left: -20px;
    top: 10px;
}

h2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 38px;
    text-transform: uppercase;
    letter-spacing: 6px;
    margin-bottom: 30px;
    position: relative;
}

h2::before {
    width: 3px;
    height: 30px;
    background: #4A4A4A;
    content: '';
    display: block;
    position: absolute;
    left: -20px;
    top: 8px;
}

h3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 34px;
    text-transform: uppercase;
    letter-spacing: 6px;
    margin-bottom: 0px;
    position: relative;
}

h4 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 30px;
    position: relative;
    color: #fff;
}

p, ul, li, a {
    font-family: 'Open Sans', sans-serif;
}

button.view {
    padding: 40px 110px;
    background: #E0D7C5;
    border: none;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 15px;
    color: #4A4A4A;
    transition: all 0.2s ease-in;
}

button.view:hover {
    color: #E0D7C5; 
    background: #4A4A4A;
}

/* =Colours
-------------------------------------------------------------- */

/* =Header
-------------------------------------------------------------- */

header {
    height: 140px;
    border-bottom: none;
    position: relative;
}

/* =Header 1
-------------------------------------------------------------- */

header.header-1 {
    background: #3E3E3E;
}

header.header-1 {
    position: fixed;
    width: 100%;
    z-index: 999;
}

/* =Logo
-------------------------------------------------------------- */

logo {
    height: 80px;
    width: auto;
    float: left;
    display: block;
    margin-top: 25px;
    margin-left: 40px;
}

logo img {
    max-height: 100%;
    max-width: none;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

/* =Nav
-------------------------------------------------------------- */

nav {
    float: right;
    
}

nav ul {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    height: 140px;
}

nav ul li {
    margin: 0px;
    padding: 0px;
    float: left;
    min-height: 140px;
    position: relative;
}

nav ul li a {
    margin: 0px;
    padding: 0px;
    float: left;
    min-height: 140px;
    line-height: 140px;
    padding-left: 20px;
    padding-right: 20px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 15px;
    color: #fff;
    position: relative;
}

nav ul li.current_page_item a::before {
    width: 30px;
    height: 3px;
    background: #fff;
    content: '';
    display: block;
    position: absolute;
    bottom: 50px;
    left: 50%;
    right: 50%;
    margin-left: -15px;
}

nav ul li a:hover {
    text-decoration: none;  
    color: #E0D7C5;
}

nav ul li.current_page_item a:hover::before {
    background: #E0D7C5;
}

/* =Phone
-------------------------------------------------------------- */

phone {
    display: block;
    width: 140px;
    height: 140px;
    background: #E0D7C5;
    float: right;
    text-align: center;
    padding-top: 40px;
}

phone p {
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    margin-top: 8px;
}

/* =Social
-------------------------------------------------------------- */

social {
    display: block;
    height: 100%;
    float: right;
    margin-left: 25px;
    margin-right: 25px;
}

social .social-item {
    display: inline-block;
    height: 100%;
    font-size: 38px;
    color: #fff;
    margin-left: 7px;
    margin-right: 7px;
}

social .social-item:hover {
    color: #E0D7C5;
}

social .social-item svg {
    margin-top: 50px;
}

/* =Content
-------------------------------------------------------------- */

content {
    padding-top: 140px;
    display: block;
}

/* =Furniture
-------------------------------------------------------------- */

furniture {
    display: block;
}

furniture .furniture-content {
    padding: 440px 140px 90px 140px;
}

furniture .furniture-content .furniture-tagline {
    position: absolute;
    top: 90px;
    left: 0;
    width: calc(100% + 200px);
    padding: 60px;
    background: #EFEFEF;
    z-index: 99;
}

furniture .furniture-content .furniture-tagline h1 {
    float: right;
}

furniture .furniture-background {
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    z-index: 98;
    position: relative;
}

furniture button.view.mobile {
    position: absolute;
    bottom: 0;
    right: 0;
    display: none;
}

furniture button.view.desktop {
    position: absolute;
    bottom: 0;
    right: 0;
}

/* =Categories
-------------------------------------------------------------- */

categories {
    display: block;
}

categories .categories-background {
    height: 100%;
    background-position: center right;
    background-size: 50% 100%;
    background-repeat: no-repeat;
    z-index: 98;
    position: relative;
}

categories .category-top {
    background: #EFEFEF;
    padding: 100px 200px;
    max-width: 50%;
    position: relative;
    transition: all 0.3s ease-in;
}

categories .category-bottom {
    background: #EFEFEF;
    padding: 100px 200px;
    max-width: 50%;
    position: relative;
    transition: all 0.3s ease-in;
}

categories .category-top button.view {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
}

categories .category-bottom button.view {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
}

categories .category-active {
    background: #4A4A4A;
    padding: 100px 200px;
    max-width: 55%;
    position: relative;
}

categories .category-active h2, categories .category-active p {
    color: #fff;
}

categories .category-active h2::before {
    width: 3px;
    height: 30px;
    background: #fff;
    content: '';
    display: block;
    position: absolute;
    left: -20px;
    top: 8px;
}

categories .category-active button.view {
    display: block;
}

categories .category-active button.view:hover {
    background: #3E3E3E;
}

/* =Features
-------------------------------------------------------------- */

features {
    display: block;
    padding: 120px 190px 30px 190px;
}

features .feature {
    height: 100%;
    margin-bottom: 90px;
    position: relative;
}

features .feature .feature-background {
    height: 400px;
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

features .feature .feature-left {
    padding: 40px;
    width: 50%;
    text-align: right;
    font-size: 14px;
}

features .feature .feature-right {
    width: 40%;
    background: #eee;
    padding: 50px 20px;
    height: 300px;
    text-align: center;
    position: absolute;
    bottom: 90px;
    right: 10%;
}

features .feature .feature-right h3 {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

/* =Services
-------------------------------------------------------------- */

services-menu {
    position: fixed;
    right: 0;
    z-index: 999;
    background: #D8CDB8;
}

services-menu .services-menu-link {
    padding: 40px 30px;
    display: block;
    float: left;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 15px;
    transition: all 0.2s ease-in;
}

services-menu .services-menu-link:hover {
    background: #E8E8E8;
    color: #4A4A4A;
}

repeat-alternate {
    border: none;
}

repeat-alternate h2.repeat-alternate-title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 38px;
    text-transform: uppercase;
    letter-spacing: 6px;
    margin-bottom: 30px;
    position: relative;
}

repeat-alternate .row {
    background: #EFEFEF;
}

repeat-alternate .row:nth-of-type(even) {
    background: #4A4A4A;
}

repeat-alternate .row:nth-of-type(even) .repeat-alternate-area h2, repeat-alternate .row:nth-of-type(even) .repeat-alternate-area p {
    color: #fff;
}

repeat-alternate .row:nth-of-type(even) .repeat-alternate-area h2::before {
    background: #fff;
}

repeat-alternate .repeat-alternate-background {
    position: relative;
}

repeat-alternate button.view {
    bottom: 0;
    left: 0;
    position: absolute;
}

repeat-alternate button.view:hover {
    background: #3E3E3E;
}

repeat-alternate .row:nth-of-type(even) button.view {
    bottom: 0;
    margin-left: 0px;
    right: 0;
    left: auto;
}

repeat-alternate .repeat-alternate-background .lightbox-button {
    position: absolute;
    left: 50%;
    right: 50%;
    top: 50%;
    bottom: 50%;
    display: block;
    height: 93px;
    width: 93px;
    margin-top: -46px;
    margin-left: -46px;
    opacity: 0.7;
}

repeat-alternate .repeat-alternate-background .lightbox-button:hover {
    opacity: 1;
}

/* =About
-------------------------------------------------------------- */

about {
    display: block;
    background: #E0D7C5;
    padding: 130px 90px;
    text-align: center;
}

about h2 {
    display: inline-block;
}

/* =Gallery
-------------------------------------------------------------- */

gallery {
    display: block;
    margin-top: 15px;
}

gallery .gallery-left {
    height: 550px;
    width: 100%;
    padding-right: 7px;
}

gallery .gallery-left .gallery-left-image {
    height: 100%;
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

gallery .gallery-right {
    height: 550px;
    width: 100%;
    padding-left: 7px;
}

gallery .gallery-right .gallery-right-image {
    height: 100%;
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/* =Repeat Alternate
-------------------------------------------------------------- */

repeat-alternate .repeat-alternate-area {
    padding-top: 300px;
    padding-bottom: 280px;
}

/* =Contact
-------------------------------------------------------------- */

contact-header {
    display: block;
}

contact-header .contact-content {
    padding: 440px 140px 90px 140px;
    position: relative;
}

contact-header .contact-content .contact-tagline {
    position: absolute;
    top: 90px;
    left: 0;
    width: calc(100% + 200px);
    padding: 60px;
    background: #EFEFEF;
    z-index: 99;
}

contact-header .contact-content .contact-tagline h1 {
    float: right;
}

contact-header .contact-background {
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    z-index: 98;
    position: relative;
}

contact-header .contact-background button.view {
    position: absolute;
    bottom: 0;
    right: 0;
}

/* =Contact
-------------------------------------------------------------- */

contact {
    display: block;
    padding: 140px 220px;
}

contact .contact-form {
    
}

contact .contact-form h2 {
    padding: 0;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

contact .contact-form h2::before {
    width: 0;
    height: 0;
} 

contact .contact-details {
    background: #E0D7C5;
    padding: 80px;
}

contact .contact-details h4 {
    color: #4d4d4d;
    font-weight: 800;
    margin-bottom: 25px;
}

contact .contact-details p {
    font-size: 14px;
    line-height: 34px;
}

/* =Forms
-------------------------------------------------------------- */

.gform_wrapper {
    margin-top: 80px !important;
}

.gform_wrapper .top_label .gfield_label, .gform_wrapper legend.gfield_label {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 400;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
    border: 2px solid #4d4d4d;
    height: 50px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}

.gform_wrapper textarea.medium {
    border: 2px solid #4d4d4d;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px; 
}

.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], .gform_wrapper .gform_page_footer input.button, .gform_wrapper .gform_page_footer input[type=submit] {
    padding: 30px 110px;
    background: #E0D7C5;
    border: none;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 15px;
    color: #4A4A4A;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px; 
    font-size: 13px !important;
}

.gform_wrapper .gform_footer input.button:hover, .gform_wrapper .gform_footer input[type=submit]:hover, .gform_wrapper .gform_page_footer input.button:hover, .gform_wrapper .gform_page_footer input[type=submit]:hover {
    color: #E0D7C5; 
    background: #4A4A4A;
}

/* =Map
-------------------------------------------------------------- */

map {
    display: block;
    width: 100%;
    height: 740px;
    margin-top: 30px;
}

/* =Footer
-------------------------------------------------------------- */

footer {
    display: block;
    padding: 100px 60px 100px 60px;
    background: #242424;
    position: relative;
}

footer img {
    margin-bottom: 35px;
}

footer p, footer ul li a {
    color: #999999;
    font-size: 14px;
    line-height: 34px;
}

footer ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

footer p.terms {
    font-size: 12px;
    color: #fff;
    margin-top: 15px;
}

footer .footer-last {
    width: 100%;
    height: 100%;
}

footer social {
    position: absolute;
    bottom: 0;
    right: 0;
    height: auto;
}

footer-copyright {
    background: #141414;
    display: block;
    overflow: hidden;
    padding: 20px 40px 20px 40px;
}

footer-copyright p {
    font-size: 13px;
    color: #fff;
    margin-bottom: 0px;
}

footer-copyright .footer-copyright p {
    float: left;
}

footer-copyright .footer-ace {
    float: right;
}

footer-copyright .footer-ace p {
    display: inline-block;
}

footer-copyright .footer-ace img {
    max-width: 100px;
    display: inline-block;
}

/* =Responsive Breakpoints
-------------------------------------------------------------- */

@media (max-width: 1999px) {
 
    contact {
        display: block;
        padding: 140px 120px;
    }
    
}

@media (max-width: 1699px) {
    
    features {
        display: block;
        padding: 120px 90px 30px 90px;
    }
    
}

@media (max-width: 1499px) {
    
    furniture .furniture-content, contact-header .contact-content {
        padding: 440px 80px 90px 80px;
        position: relative;
    }
    
    furniture .furniture-content .furniture-tagline, contact-header .contact-content .contact-tagline {
        width: calc(100% + 100px);
    }
    
    categories .category-top, categories .category-bottom, categories .category-active {
        padding: 100px;
        max-width: 100%;
    }
    
}

@media (max-width: 1299px) {
    
    footer {
        display: block;
        padding: 100px 30px 100px 30px;
        background: #242424;
        position: relative;
    }
    
}

@media (min-width: 1200px) {
  
}

@media (max-width: 1199px) {
    
    nav {
        display: none;
    }
    
    trigger.menu-bttn {
        display: block;
    }
    
    #nav-icon3 {
        margin-top: 58px !important;
    }
    
    #nav-icon3 span {
        background: #E0D7C5;
    }
    
    #side-exit {
        margin-top: 0px;
        position: absolute;
        top: 30px;
        right: 0px;
    }
    
    #side-exit #nav-icon3 {
        margin-top: 10px !important;
    }
    
    #side-exit #nav-icon3 span {
        background: #E0D7C5 !important;
    }
    
    .side-logo {
        max-width: 300px !important;
    }
    
    .ace-spmenu {
        border-left: none;
        background: #2d2d2d;
    }
    
    .ace-spmenu-header {
        height: 100px;
        border-bottom: 2px solid #E0D7C5;
        text-align: center;
        overflow: hidden;
    }
    
    .ace-spmenu-vertical a {
        border-bottom: 1px solid #E0D7C5;
        font-weight: 600;
        color: #E0D7C5;
        text-transform: uppercase;
        font-weight: 700;
    }
    
    .ace-spmenu-vertical a:hover {
        color: #4d4d4d;
        background: #E0D7C5;
    }
    
    furniture .furniture-content, categories .category-top, categories .category-bottom, categories .category-active, contact-header .contact-content {
        padding: 80px;
        position: relative;
    }
    
    categories .category-top, categories .category-bottom, categories .category-active {
        padding-bottom: 140px;
    }
    
    categories .category-top button.view, categories .category-bottom button.view {
        position: absolute;
        bottom: 0;
        right: 0;
        top: auto;
        display: block !important;
    }
    
    categories .category-mobile-background {
        height: 500px;
        background-position: center center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }
    
    furniture .furniture-background, contact-header .contact-background {
        height: 500px;
    }
    
    furniture .furniture-content .furniture-tagline, contact-header .contact-content .contact-tagline {
        top: -390px;
        width: 60%;
    }
    
    about {
        padding: 90px 60px;
    }
    
    features {
        display: block;
        padding: 90px 30px 0px 30px;
    }
    
    services-menu {
        display: none;
    }
    
    repeat-alternate .repeat-alternate-background {
        height: 500px;
    }
    
    repeat-alternate .repeat-alternate-area {
        padding-left: 60px;
        padding-right: 60px;
    }
    
    contact {
        display: block;
        padding: 60px;
    }
    
    contact .contact-details {
        margin-top: 60px;
    }
    
    footer .footer-section {
        padding-bottom: 50px;
    }
    
    footer .footer-section p {
        max-width: 600px;
    }

}

@media (min-width: 992px) {
 
}

@media (max-width: 991px) {

    gallery .gallery-left {
        height: 400px;
        padding-right: 0px;
    }

    gallery .gallery-right {
        height: 400px;
        padding-left: 0px;
    }
    
    repeat-alternate .repeat-alternate-area {
        padding-top: 200px;
        padding-bottom: 180px;
    }
    
}

@media (min-width: 768px) {
    
}

@media (max-width: 767px) {
    
    header phone {
        display: none;
    }

    furniture .furniture-content .furniture-tagline, contact-header .contact-content .contact-tagline {
        width: 80%;
    }
    
    features .feature .feature-left {
        width: 100%;
        text-align: center;
    }
    
    features .feature .feature-right {
        width: 40%;
        background: #eee;
        padding: 50px 20px;
        height: 300px;
        text-align: center;
        position: absolute;
        bottom: 0px;
        top: 120px;
        right: 50%;
        left: 50%;
        margin-left: -150px;
        min-width: 300px;
    }
    
    features .feature {
        margin-bottom: 40px;
    }
    
    footer-copyright p {
        float: none;
        width: 100%;
        text-align: center;
    }
    
    footer-copyright .footer-ace {
        text-align: center;
        float: none;
    }
    
}

@media (max-width: 599px) {
    
    header social {
        display: none;
    }
    
    #nav-icon3 {
        margin-right: 30px;
    }
    
    furniture .furniture-content .furniture-tagline, contact-header .contact-content .contact-tagline {
        top: 0;
    }
    
    furniture .furniture-content, contact-header .contact-content {
        padding: 340px 80px 160px 80px;
    }
    
    furniture .furniture-background {
        position: static;
    }
    
    furniture .furniture-content .furniture-tagline, contact-header .contact-content .contact-tagline {
        width: 100%;
    }
    
    furniture .furniture-background, contact-header .contact-background {
        height: 350px;
    }
    
    furniture .furniture-content .furniture-tagline h1, contact-header .contact-content .contact-tagline h1 {
        width: 100%;
        float: left;
    }
    
    furniture button.view.desktop {
        display: none;
    }
    
    furniture button.view.mobile {
        display: block;
    }
    
    contact .contact-details {
    background: #E0D7C5;
    padding: 70px 35px;
}

}

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

}