/* --------------------------------------------------------------
GENERAL ELEMENTS
-------------------------------------------------------------- */


/* FORMS */
input[type=text], input[type=password], input[type=input], 
input[type=tel], input[type=url], input[type=email], 
input[type=number], input[type=range], input[type=search], input[type=color], 
input[type=time], input[type=week], input[type=month], input[type=date], input[type=datetime], 
textarea, select { border:1px solid #ddd; padding:8px 6px; background:#fff; }


/* --------------------------------------------------------------
LAYOUT ELEMENTS - Header, footer...
-------------------------------------------------------------- */


/* TOP */
.topbar { background:none; transition:0.5s all; }
.body-scroll .topbar { margin-top:0; opacity:0; }

/* HEADER */
.wrapper-header { position:fixed; top:0; left:0; width:100%; z-index:999; transition:0.6s background; }
.body-scroll .wrapper-header { background:rgba(255,255,255,0.8); }
.header { padding:30px 0; background:none; border-bottom:1px solid rgba(255,255,255,0.4); transition:0.5s all; transition-delay:0s; }
.body-scroll .header { padding:10px 0; transition-delay:0s; }

.logo { transition:0.5s all; transform-origin:left; }
.body-scroll .logo { transform:scale(0.7); }



/* LANGUAGE SWITCHER */
.languages .language { font-weight:bold; border:0px solid #eee; }
.languages .languages-list { background:#fff; box-shadow:0 0 3px 0 rgba(0,0,0,0.1); }
.languages .language-current { background:rgba(255,255,255,0.8); transition:0.6s background; }
.body-scroll .languages .language-current { background:none; }


/* PAGE BANNERS AND TITLES */
.pagetitle { background:#eee; padding:200px 0 50px; margin:0; }
.pagetitle .pagetitle-body { padding:40px 0; float:none; margin:0 auto; text-align:center; color:#fff; }
.pagetitle .pagetitle-title { margin:0; text-transform:uppercase; color:#fff; }
.pagetitle .pagetitle-image {  padding:10% 0 0; }
.pagetitle-has-image .pagetitle-image { display:block; }


/* MAIN/CONTENT */
.main { }


/* FOOTER */
.subfooter { padding:100px 0 60px; background:#fff; }
.footer { padding:100px 0; background:#f1f1f1; text-align:center; }
.footer .social { float:none; display:inline-block; overflow:hidden; text-align:center; }


/* --------------------------------------------------------------
COMMON ELEMENTS - Languages, social...
-------------------------------------------------------------- */


/* SOCIAL ICONS */
.social .social-profile { color:#999; }


/* --------------------------------------------------------------
SPECIFIC PAGES - Search, property...
-------------------------------------------------------------- */

/* HOMEPAGE SLIDES */
.hero { padding:250px 0 100px; text-align:center; }
.hero .hero-caption { padding:0 0 30px; text-shadow:0 1px 2px rgba(0,0,0,0.3); color:#fff; }
.hero .hero-caption p:last-child { margin-bottom:0; }
.hero .hero-title { font-size:4em; margin:0; font-weight:300; }
.hero .hero-content { font-size:1.8em; margin:0 0 50px; }


/* SECTIONS */
.block-heading { position:relative; margin:0 0 40px; padding:0; text-align:center; line-height:1.2; }
.block-heading-title { margin:0; padding:0; font-size:2em; }
.block-heading-subtitle { margin:0; font-size:1em; opacity:0.6; }


/* HOMEPAGE FEATURES */
.block-banners {}
.block-banner { display:block; color:#bbb; margin:0 0 25px; position:relative; padding-top:70%; background-size:cover; background-position:center; background-color:#555; box-shadow:0 50px 60px -40px rgba(80,80,80,0.6); border-radius:4px; }
.block-banner .block-banner-image { display:block; position:relative; min-height:102px; margin:0; }
.block-banner .block-banner-image img { display:block; margin:0 auto; }
.block-banner .block-banner-overlay { background:rgba(0,0,0,0.2); top:0; bottom:0; left:0; right:0; text-align:center; z-index:100; }
.block-banner .block-banner-body { position:absolute; top:50%; bottom:0; padding:0; margin:-30px 0 0; width:100%; z-index:200; box-sizing:border-box; }
.block-banner .block-banner-title { margin:0 auto 10px; max-width:450px; color:#fff; padding:0 30px; font-size:2em; }
.block-banner .block-banner-content { font-size:1em; max-width:450px; margin:0 auto; padding:0 30px; color:#fff; }

/* HOMEPAGE TAGLINE */
.tagline { background:none; }
.tagline-content { padding:30px; background:rgba(0,0,0,0.03); border-radius:4px; margin:0; }
.tagline .tagline-subtitle,
.tagline .tagline-title { margin:0;}

/* PROPERTY PAGE */
.property-content { overflow:hidden; margin:0 0 30px; }
/* Details */
.property-details { overflow:hidden; margin:0 0 20px; }
.property-detail { }
.property-detail-body { position:relative; margin:0; line-height:1; padding:0 0 0 45px; }
.property-detail-title { color:#bbb; text-transform:uppercase; font-size:12px; margin:0 0 5px; }
.property-detail-content { color:#555; font-size:20px; font-weight:bold; }
/* Icons */
.property-detail .property-detail-body:before { position:absolute; width:35px; height:40px; line-height:40px; top:50%; left:0; margin:-20px 0 0; color:#ccc; content:'\f115'; font-family:'realestate'; font-size:32px; text-align:center; }
.property-detail-ref .property-detail-body:before { content:'\f100'; }
.property-detail-bedrooms .property-detail-body:before { content:'\f103'; }
.property-detail-bathrooms .property-detail-body:before { content:'\f102'; }
.property-detail-toilets .property-detail-body:before { content:'\f102'; }
/* Price */
.property-price { }
.property-price-original { font-weight:bold; }
.property-price-current { color:#555; font-weight:bold; }
.property-price-secondary { }
/* Contact */
.property-contact {  }
.property-contact-item { margin:0 0 15px; background:#eee; border:2px solid #ddd; border-radius:3px; }
.property-contact-body { margin:0 0 0 70px; text-transform:uppercase; line-height:1; padding:15px; background:#fff; }
.property-contact-title { color:#888; font-size:12px; margin:0 0 5px; }
.property-contact-content { color:#555; font-size:20px; font-weight:bold; }
/* Specs */
.property-spec { position:relative; padding-left:35px; }
.property-spec:before { position:absolute; width:24px; height:24px; line-height:24px; top:50%; left:0; margin:-12px 0 0; content:'\f058'; color:#7c3; font-family:'fontawesome'; font-size:20px; text-align:center; }
/* Features */
.property-feature-title:after { content:':'; }
/* Form */
.property-form { background:#fff; border:2px solid #ddd; border-radius:4px; }
.property-form-title { margin:0; padding:20px 20px 0; text-transform:uppercase; font-size:20px; font-weight:bold; }
.property-form-body { padding:20px; }
.property-form-field { margin:0 0 20px; }
.property-form-footer { padding:20px 20px; background:#f9f9f9; }
.property-form-submit { }
.property-form-terms { margin:0 0 10px; }


/* POST LISTING */
.post { }
.post .post-image { border-radius:3px; }
.post .post-byline {  }
.post .post-content { }


/* --------------------------------------------------------------
DESIGN ELEMENTS - Buttons, slideshows...
-------------------------------------------------------------- */


/* SEARCHFORM */
.searchform { background:#fff; border-radius:4px; }
.homesearch { background:none; padding:60px 0 0; }
.homesearch .searchform { background:rgba(255,255,255,0.9); margin:0 auto 0; }
.searchform-body { padding:20px; }
.searchform-title { text-transform:uppercase; font-size:20px; font-weight:bold; }
.searchform-meta { }
.searchform-block { margin:15px 0 0; }
.searchform-advanced { padding:0 20px 20px; text-align:left; }
.searchform select { padding:15px; }
.searchform input[type=text],
.searchform input[type=number] { padding:15px; }
.searchform input[type=submit] { padding:17px 0; }


/* SINGLE PROPERTY LISTING */
.property-item { background:#fff; margin:0 0 35px; }
.property-item .property-item-image { overflow:hidden; border-radius:4px; box-shadow:0 25px 30px -20px rgba(80,80,80,0.6); }
.property-item .property-item-image img { transition:0.2s all; }
.property-item:hover .property-item-image img { transform:scale(1.2); }
.property-item .property-item-price { font-size:1.1em; }
.property-item .property-item-price-current { }
.property-item .property-item-price-onsale { }
.property-item .property-item-body { min-height:150px; text-align:center; }
.property-item .property-item-content { padding:20px 0 0; min-height:0px;  }
.property-item .property-item-title { font-size:1.1em; margin:0; font-weight:300; }
.property-item .property-item-type { font-size:0.9em; color:#999; }
.property-item .property-item-subtitle { font-size:0.9em; margin:0; }
.property-item .property-item-meta { padding:10px 0 0; display:inline-block; min-height:25px; }
.property-item .property-item-meta > div:before { top:0; left:50%; margin:0 0 0 -15px; color:#ccc; font-size:32px; }
.property-item .property-item-meta > .property-item-surface:before { font-size:24px; }
.property-item .property-item-meta > div { padding:30px 14px 0; min-width:30px; }


/* --------------------------------------------------------------
RESPONSIVE STYLES
-------------------------------------------------------------- */


/* LARGE SCREENS */
@media screen and (min-width: 1280px){}


/* TABLET SCREENS (LANDSCAPE) */
@media screen and (max-width: 1024px){}


/* TABLET SCREENS (PORTRAIT) */
@media screen and (max-width: 800px){
    .hero .hero-title { font-size:3em; }
}


/* SMARTPHONE SCREENS */
@media only screen and (max-width:600px){

    .hero .hero-title { font-size:2em; }
}