/*   
Theme Name: jmadisonhomes
Theme URI: http://trendwebsites.com/
Description: A custom WordPress theme, built from the ground-up
Author: TrendWebsites
Version: 1.00
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent;
}
ol, ul { list-style: none; }
blockquote, q { quotes: none; }

/* remember to define focus styles! */
:focus { outline: 0; }

/* remember to highlight inserts somehow! */
ins { text-decoration: none; }
del { text-decoration: line-through; }

/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing: 0; }  

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
img { height: auto; max-width: 100%; width: auto\9; /* ie8 */ }

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

body { font: 16px/1.2 'Montserrat', arial, verdana, sans-serif; color: #333; text-align: left; background: #fff; overflow-x: hidden; overflow-y: scroll; }

#header { padding: 20px 2%; position: fixed; top: 0; left: 0; width: 100%; background: #191919; z-index: 9; transition: all .2s linear; }
body.home #header { background: none; }
body.home #header.fixed { background: #191919; }

#content { position: relative; padding: 80px 0 0; }
body.home #content { padding: 0; }

#footer { font-size: 15px; }
#footer .layout { border-top: 1px solid #1a1a1a; padding: 40px 0; }

.layout { max-width: 1320px; width: 96%; margin: 0 auto; position: relative; }

.break { clear: both; position: relative; height: 0; }

p { margin: 0 0 20px; }
hr { height: 1px; border: 0px; color: #ccc; background: #ccc; margin: 40px 0; }

h1, .altHeader1 { color: #333; font: 600 36px 'Montserrat'; margin: 0 0 30px; }
h2, .altHeader2 { color: #333; font: 600 32px 'Montserrat'; margin: 0 0 25px; }
h3, .altHeader3 { color: #333; font: 600 28px 'Montserrat'; margin: 0 0 25px; }
h4, .altHeader4 { color: #333; font: 600 24px 'Montserrat'; margin: 0 0 20px; }
h5, .altHeader5 { color: #333; font: 600 22px 'Montserrat'; margin: 0 0 20px; }
h6, .altHeader6 { color: #333; font: 600 20px 'Montserrat'; margin: 0 0 20px; }

a, a:hover, a:visited { color: #cf5d06; text-decoration: underline; transition: all .2s linear; }
a:hover { color: #ef7d26; }

/* footer */
.social { float: right; margin: 0 0 10px; }
.social a, .social a:hover, .social a:visited { display: inline-block; }
.social img { width: 32px; }
.bottomMenu { margin: 0 0 10px; }
.bottomMenu li { display: inline-block; margin: 0 15px 0 0; }
.bottomMenu a, .bottomMenu a:hover, .bottomMenu a:visited { color: #333; text-decoration: none; }
.bottomMenu a:hover { color: #000; }
.copyright {}
.copyright span { display: inline-block; }
/* End footer */

/* header */ 
.logo-h { float: left; width: 40%; font-size: 0; }
.logo-h a, .logo-h a:hover, .logo-h a:visited { display: inline-block; }

.mainMenu { float: right; padding: 5px 0 0; width: 60%; }
.mainMenuList { text-align: right; }
.mainMenuList .menu-item { display: inline-block; vertical-align: middle; margin: 5px 12px; position: relative; color: #c5c5c5; }

.mainMenuList .menu-item.menu-item-has-children:after { content: "\f107"; font: 16px/1 "FontAwesome"; display: inline-block; vertical-align: baseline; }

.mainMenuList .menu-item a, .mainMenuList .menu-item a:hover, .mainMenuList .menu-item a:visited { text-decoration: none; color: #c5c5c5; }

.mainMenuList .menu-item a:hover { color: #fff; }

.mainMenuList>.current-menu-item>a, .mainMenuList>.current-menu-item>a:hover, .mainMenuList>.current-menu-item>a:visited, 
.mainMenuList>.current-menu-parent>a, .mainMenuList>.current-menu-parent>a:hover, .mainMenuList>.current-menu-parent>a:visited { color: #fff; }

.mainMenuList>.menu-item>.sub-menu { position: absolute; left: -12px; top: 100%; background: #393939; display: none; box-shadow: 0 2px 4px rgba(0,0,0,.2); min-width: 200px; text-align: left; z-index: 2; }
.mainMenuList>.menu-item>.sub-menu>.menu-item { display: block; margin: 0; }
.mainMenuList>.menu-item:hover>.sub-menu { display: block; }

.mainMenuList>.menu-item>.sub-menu>.menu-item a, .mainMenuList>.menu-item>.sub-menu>.menu-item a:hover, .mainMenuList>.menu-item>.sub-menu>.menu-item a:visited { 
	padding: 8px 12px; display: block; }

.mainMenuList>.menu-item>.sub-menu>.menu-item a:hover, .mainMenuList>.menu-item>.sub-menu>.current-menu-item>a, .mainMenuList>.menu-item>.sub-menu>.current-menu-item>a:hover, .mainMenuList>.menu-item>.sub-menu>.current-menu-item>a:visited { background: #191919; color: #fff; }

.toggle-nav { display: none; width: 65px; height: 40px; cursor: pointer; color: #fff; font-size: 28px; text-align: center; line-height: 40px; transition: all .2s linear; border: 1px solid rgba(255,255,255,.3); }
.toggle-nav:hover { }

.modal_close { display: none; float: right; color: #fff; font-size: 40px; line-height: 1; padding: 0 25px; cursor: pointer; font-weight: normal; }
/* End header */

/* bannerBlock */
.bannerBlock { position: relative; }
.sloganBlock { position: absolute; left: 0; width: 100%; top: 50%; color: #fff; z-index: 1; }
.sloganBlock .layout { max-width: 1640px; }
.sloganBlock p { font-size: 24px; margin: 0 0 40px; }

.sloganBlock .more-btn { text-transform: uppercase; font-size: 14px; }
.sloganBlock .more-btn a, .sloganBlock .more-btn a:hover, .sloganBlock .more-btn a:visited { position: relative; padding: 0 0 15px; display: inline-block; text-decoration: none; color: #fff; }
.sloganBlock .more-btn a:before { content: ""; position: absolute; display: block; left: 0; width: 100%; bottom: 0; height: 2px; background: #fff; }
.sloganBlock .more-btn a:after { content: ""; position: absolute; display: block; left: 0; width: 0; bottom: 0; height: 2px; background: #000; transition: all .2s linear; }  
.sloganBlock .more-btn a:hover:after { width: 100%; }
.sloganBlock .more-btn a:first-child { margin: 0 65px 0 0; }
/* End bannerBlock */

.entry { padding: 50px 10px; line-height: 1.6; }
.entry>h1 { text-align: center; }
.entry ul, .entry ol { margin: 0 0 20px; }
.entry ul li { list-style: disc outside; margin: 0 0 0 20px; }
.entry ol li { list-style: decimal outside; margin: 0 0 0 25px; }

/* forms */
.formRow { margin: 0 0 15px; }
.formSubmit { margin: 20px 0 0; text-align: center; }
.formRow label { display: block; margin: 0 0 5px; }
.formRow sup { color: #880000; }
.formLeft { float: left; width: 49%; }
.formRight { float: right; width: 49%; }
.formRecaptcha { max-width: 304px; margin: 0 auto; }

input.txt, textarea.ta, select.sel { 
	border: 1px solid #e4e7ea; background: #fff; color: #9d9d9d; font: 16px 'Montserrat'; height: 40px; padding: 0 20px; margin: 0; width: 100%;
	transition: all .2s linear;
}
select.sel { padding: 0 0 0 5px; }
textarea.ta { height: 138px; padding: 10px 20px; overflow: auto; resize: vertical; }
input.txt:focus, select.sel:focus, textarea.ta:focus { box-shadow: 2px 2px 3px rgba(0,0,0,.25) inset; }

.formRow input::-webkit-input-placeholder { color: #9d9d9d; }
.formRow input::-moz-placeholder { opacity: 1; color: #9d9d9d; }

input.btn { 
	color: #fff; border: none; font: 500 16px 'Montserrat'; height: 40px; text-transform: uppercase; cursor: pointer; overflow: visible; padding: 0 40px; background: #cf5d06; transition: all .2s linear;
}
input.btn:hover { background: #ef7d26; }
input.btn:focus { box-shadow: none; }

#wpcf7-f4-p38-o1 textarea.ta/*, .contactBlock textarea.ta, #wpcf7-f4-p63-o1 textarea.ta*/ { height: 211px; }

span.wpcf7-not-valid-tip { font-size: 13px !important; left: 0; position: absolute; top: 100%; line-height: 1.2; }
.wpcf7-form-control-wrap { display: block; }

.wpcf7 .formSubmit .ajax-loader { display: block; margin: 5px auto; }
/* End forms */

.postItem { margin: 0 0 20px; padding: 0 0 20px; border-bottom: 1px solid #ccc; }
.postPicture { float: left; margin: 0 20px 0 0; }
.postInfo { overflow: hidden; }

.pagination { padding: 20px 0; }
.pagination a, .pagination a:hover, .pagination a:visited, .pagination span { 
	display: inline-block; vertical-align: top; cursor: pointer; background: #93989d; margin: 1px; color: #fff; padding: 2px 12px; text-decoration: none; }
.pagination span, .pagination a:hover { background: #191919; }

/* */
ul.chList { }
ul.chList li { list-style: none; margin: 0 0 10px; padding: 0 0 0 25px; position: relative; }
ul.chList li:before { content: "\f00c"; position: absolute; left: 0; top: 0; display: block; font: 20px/1.2 "FontAwesome"; color: #880000; }
/* */

/* workBlock */
.workBlock { 
    background: #7f7f7f url('dsgn/Contact.jpg') no-repeat 50% 50%; background-size: cover; text-align: center; color: #fff; position: relative; padding: 7% 0; background-attachment: fixed; }
.workBlock:before { content: ""; position: absolute; display: block; left: 0; width: 100%; top: 0; height: 100%; background: rgba(0,0,0,.6); }
.workBlock .layout { max-width: 580px; }
.workBlock h3 { padding: 0 0 35px; display: inline-block; color: #fff; position: relative; }
.workBlock h3:before { content: ""; position: absolute; display: block; left: 20%; width: 60%; bottom: 0; height: 2px; background: rgba(255,255,255,.3); }
.workBlock p { margin: 0 0 35px; line-height: 1.4; font-size: 18px; }
.workBlock a, .workBlock a:hover, .workBlock a:visited { 
    color: #fff; display: inline-block; text-decoration: none; text-transform: uppercase; font-size: 13px; font-weight: bold; border: 1px solid #fff; padding: 23px 45px; }
.workBlock a:hover { color: #000; background: #fff; }
/* End workBlock */

/* contactBlock */
.contactBlock { padding: 3% 0; }
.contactItem { float: left; width: 32%; font-size: 15px; line-height: 1.7; padding: 0 0 0 50px; position: relative; }
.contactItem2 { margin: 0 2%; }
.contactItem b { text-transform: uppercase; }
.contactItem a, .contactItem a:hover, .contactItem a:visited { color: #333; text-decoration: none; }
.contactItem a:hover { color: #880000; }
.contactItem:before { display: block; position: absolute; left: 0; top: 0; font: 30px/1.2 FontAwesome; }
.contactItem1:before { content: "\f278"; }
.contactItem2:before { content: "\f095"; }
.contactItem3:before { content: "\f003"; }  
/* End contactBlock */ 

/* testiBlock */
.testiBlock { padding: 5% 0; }
.testiBlock h3 { text-align: center; }
  
.jcarousel-wrapper { position: relative; margin: 0 0 30px; }
.jcarousel { position: relative; overflow: hidden; margin: 0 0 15px; }
.jcarousel ul { width: 20000em; position: relative; list-style: none; margin: 0; padding: 0; }
.jcarousel li { float: left; line-height: 1.6; }  
  
.jcarousel-pagination { text-align: center; font-size: 0; }
.jcarousel-pagination a, .jcarousel-pagination a:hover, .jcarousel-pagination a:visited { 
   text-indent: -9999px; width: 16px; height: 16px; display: inline-block; vertical-align: middle; margin: 0 4px; border-radius: 8px; border: 1px solid #000; background: #fff; }
.jcarousel-pagination a:hover, .jcarousel-pagination a.active, .jcarousel-pagination a.active:hover, .jcarousel-pagination a.active:visited { background: #000; }
  
.testiAll { text-align: center; }
.testiAll a, .testiAll a:hover, .testiAll a:visited { display: inline-block; color: #000; text-decoration: none; padding: 8px 43px; border: 1px solid #000; font-size: 15px; }
.testiAll a:hover { color: #fff; background: #000; }  
/* End testiBlock */  

/* servicesBlock */
.servicesBlock { padding: 5% 0 0; }
.servicesBlock .layout { max-width: none; }

.servicesList {font-size: 0;}
.servicesItem { display: inline-block; vertical-align: top; width: 23.5%; margin: 0 0 0 2%; font-size: 16px; line-height: 1.2; color: #555; }
.servicesItem:first-child { margin: 0; }

.servicesListInner .servicesItem { width: 32%; margin: 0 0 0 2%; }
.servicesListInner .servicesItem:first-child { margin: 0; }

.servicesItem p { line-height: 1.5; }
.servicesItemImage { padding: 0 0 60%; background-position: 50% 0; background-repeat: no-repeat; background-size: cover; margin: 0 0 15px; }
.servicesItemHeader { font-weight: 500; font-size: 18px; margin: 0 0 10px; text-transform: uppercase; color: #000; }

.more-btn { font-weight: 500; }
.more-btn a, .more-btn a:hover, .more-btn a:visited { position: relative; padding: 0 0 8px 10px; display: inline-block; text-decoration: none; color: #000; }
.more-btn a:before { content: ""; position: absolute; display: block; left: 0; width: 36px; bottom: 0; height: 1px; background: #000; transition: all .2s linear; }
.more-btn a:hover:before { width: 100%; }
.more-btn .fa { margin: 0 10px 0 0; width: 16px; text-align: center; }
/* End servicesBlock */
