/*
Theme Name: Stormship
Author: Stormship Design & Mike Patton
Author URI: http://stormship.com/
Description: A custom theme for Kenzo Salon
Version: 1.0
*/


/* GENERAL */

html,body{ font-size:16px; height:100%; }


img{ max-width:100%; height:auto; }
a{ text-decoration:none; color:inherit; }

.din{ font-family:"Source Sans Pro","Din","Open-sans", sans-serif; }
.akkurat{ font-family:"Roboto Condensed", "akkurat","Open-sans", sans-serif; }
.lato{ font-family:"Source Sans Pro","Lato","Open sans", sans-serif; }

#pageRel{ position:relative; min-height:100%; }
.pageBg{ position:fixed; z-index:-1; top:0; left:0; right:0; bottom:0; background-repeat:no-repeat; background-size:cover; }
#mainContent{ position:relative; padding:115px 0 180px; min-height:53%; }
#pageTitle{ position:absolute; text-align:center; background-color:rgba(0,0,0,.33); color:#fff; height:80px; line-height:80px; padding-left:9%; font-size:1.875em; font-weight:100; top:220px; z-index:10; font-family:"Roboto Condensed", "akkurat","Open-sans", sans-serif; }
#pageTitle:after{ content:""; width:0px; height:0px; border-bottom:80px solid rgba(0,0,0,.33); border-right:40px solid transparent; position:absolute; left:100%; top:0px; }
#pageTitle span{ font-size:1.6em; font-weight:100; }
.subTitle{ font-size:1.875em; color:#fff; font-weight:100; margin-top:30px; margin-bottom:20px; }


/* HEADER */
header{ position:fixed; background-color:rgba(255,255,255,.77); width:96%; padding:0 2%; z-index:20; top:0; }
#headerWrap{ max-width:1166px; margin:0 auto; position:relative; padding:25px 0px 20px; }
#logo{ margin:0 7%; display:inline-block; max-width:20%; }
#tagline{ box-shadow:22px 22px 0 0 rgba(0,0,0,.18); margin-bottom:-24px; display:inline-block; max-width:20%; }
.request{ position:absolute; top:0; right:0; }
	.panel {
		position: fixed;
		left: -80%; /*left or right and the width of your navigation panel*/
		width: 80%; /*should match the above value*/
	}


/* FOOTER */
footer{ background-color:#fff; padding:70px 0 30px; text-align:center; position:absolute; bottom:0; width:100%; }
#footNav{ border-right:2px solid #6e6e6e; margin-right:20px; display:inline-block; }
#footNav ul{  }
#footNav li{ display:inline-block; color:#6e6e6e; font-size:.9em; margin:0 10px; }
#footNav li:first-child{ margin-left:0; }
#footNav li:last-child{ margin-right:20px; }
#yelp{ display:inline-block; font-size:.9em; }
#yelp img{ display:inline-block; margin-bottom:-6px; }
#social{ display:inline-block; margin-left:15px; vertical-align:middle; }
#social a:first-child{ margin-right:10px; }
#copyright{ margin-bottom:30px; font-size:.9em; color:#6e6e6e; }
#copyright b{ font-weight:bold; }
#copyright span{ margin:0 0px; padding:0 15px; border-right:1px solid #666; display:inline-block; }
#copyright span:last-child{ border-right:0; }


/* HOME */
.home #pageTitle{ top:200px; }
#mainContent.home{ min-height:500px; padding-bottom:300px; }
#homeLinks{ position:absolute; text-align:center; background-color:rgba(255,255,255,.8); color:#fff; height:200px; font-size:.9em; font-weight:400; right:0; bottom:190px; text-transform:uppercase; }
#homeLinks:before{ content:""; width:0px; height:0px; border-top:200px solid rgba(255,255,255,.8); border-left:120px solid transparent; position:absolute; right:100%; top:0px; }
.homeLink{ display:inline-block; color:#000; text-align:left; margin:0 30px; margin-top:-20px; vertical-align:top; }
.homeLink img{ border:4px solid rgba(0,0,0,.75); margin-bottom:15px; max-height:120px; max-width:140px; width:auto; height:auto; border:0; }
.homeLink p{ margin-left:10px; }
.homeLink:first-child p{ margin-left:0; }
.homeLink span{ font-size:2.4em; display:block; font-weight:100; }
.homeTitle{ top:250px; position:absolute; } 



/* SECONDARY */
#theContent{ position:relative; margin-top:170px; margin-bottom:50px; }
.copy{ background-color:rgba(255,255,255,.75); padding:30px 2% 45px; max-width:55%; margin-left:30%; }
.copy p{ font-size:1.25em; line-height:1.4; }
.copy p span{ font-size:1.5em; line-height:1; }



/* ABOUT */
#aboutKenzo{ position:relative; text-align:left; background-color:rgba(243,49,43,.9); color:#fff; padding-left:7%; max-width:82%; height:230px; line-height:1.3; padding-top:30px; padding-bottom:30px; margin-top:30px; }
#aboutKenzo:after{ content:""; width:0px; height:0px; border-bottom:290px solid rgba(243,49,43,.9); border-right:135px solid transparent; position:absolute; left:100%; top:0px; }
#aboutKenzo .imgWrap{ display:inline-block; max-width:48%; margin-right:2%; margin-top:-80px; }
#aboutKenzo .quote{ display:inline-block; vertical-align:top; max-width:48%; font-size:1.12em; color:#000; }
#aboutKenzo .title{ font-size:1.2em; color:#fff; margin-bottom:20px; margin-left:35px; }
#aboutKenzo .title span{ font-size:.8em; color:#000; }
#aboutKenzo .quote .theQuote{ padding:0 0 0 35px; background-image:url(images/lQuote.png); background-repeat:no-repeat; }
#aboutKenzo .quote .theQuote:after{ content:url(images/rQuote.png); margin-left:2px; }



/*SERVICES */
#mainContent.services{ min-height:0; padding-bottom:0; }
#serviceContent{ position:relative; padding:170px 0 0px; }
#serviceContent .copy{ padding-bottom:70px; }
#moreContent{ position:relative; text-align:left; background-color:rgba(243,49,43,.9); color:#fff; padding-left:7%; padding-right:7%; max-width:62%; height:250px; line-height:1.3; padding-top:30px; padding-bottom:30px; margin-top:30px; margin-top:-50px; }
#moreContent:after{ content:""; width:0px; height:0px; border-bottom:290px solid rgba(243,49,43,.9); border-right:135px solid transparent; position:absolute; left:100%; top:0px; }
#services{ position:relative; z-index:1; }
.serviceCol{ width:30%; display:inline-block; vertical-align:top; clear:both; margin:0 2.5%; }
.serviceCol:first-child{ margin-left:0; }
.serviceCol:last-child{ margin-right:0; }
.serviceCol span{ float:right; color:#000; }
.serviceCol span:first-child{ float:none; color:#fff; }
.serviceCol p.description{ display:none; }
.serviceCol li.tagline{ margin-top:30px; width:150%; }
#serviceDescription{ background-color:#fff; padding-top:60px; margin-top:-25px; padding:45px 7%; }
.serviceTitle{ font-size:2.8em; color:#db4843; margin-bottom:20px; font-weight:100; }
.serviceDesc{ padding-bottom:10px; display:inline-block; width:30%; margin:0 2.5%; vertical-align:top; line-height:1.2; }
.serviceDesc:nth-child(3n+1){ margin-left:0; }
.serviceDesc:nth-child(3n){ margin-right:0; }
.sdTitle{ color:#db4843; font-weight:600; }




/* STYLISTS */
#styleDarken{ position:fixed; background-color:rgba(0,0,0,.8); top:112px; bottom:0; right:0; left:0; }
.stylists #theContent{ position:relative; top:0; max-width:1166px; padding:50px 100px; margin:0 auto; color:#fff; }
.stylists #pageTitle{ position:relative; background:none; display:inline-block; top:0; left:0; border:none; float:left; margin-left:0; border:0; padding:0; width:350px; text-align:right; line-height:normal; }
.stylists #pageTitle:after{ background:none; border:none; }
.stylists .copy{ margin-left:375px; padding-left:20px; border-left:2px solid #f3312b; background:none; padding:5px 15px; max-width:none; }
.stylists .copy p{ font-size:1em; }

#theStylists{ max-width:1266px; padding:50px; margin:0 auto; }
.employee{ display:inline-block; width:30%; margin:0 2.5%; position:relative; margin-bottom:20px; }
.employee:nth-child(3n+1){ margin-left:0; }
.employee:nth-child(3n){ margin-right:0; }
.employee .img{ height:260px; background-position:center; border:3px solid #000; background-size:cover; }
.employee .img.left{ background-position:left center; }
.employee .img.right{ background-position:right center; }
.employee .zoom{ position:absolute; top:-15px; right:-15px; width:30px; height:30px; background-image:url(images/plus.png); background-size:cover; }
.employee .zoom:hover{ cursor:pointer; }
.employee .name{ position:relative; text-align:center; background-color:rgba(0,0,0,.33); color:#f3312b; height:60px; line-height:60px; padding-left:40px; font-size:1.875em; font-weight:100; margin-top:-20px; left:-10px; text-align:left; display:inline-block; white-space:nowrap; }
.employee .name:after{ content:""; width:0px; height:0px; border-bottom:60px solid rgba(0,0,0,.33); border-right:40px solid transparent; position:absolute; left:100%; top:0px; }
.employee .name span.lName{ display:none; }
.employee .name span.roles{ font-size:.5em; color:#fff; margin-left:10px; text-transform:lowercase; white-space:nowrap; }
.employee .desc{ display:none; }



/* PRODUCTS */
#theProducts{ position:relative; text-align:left; background-color:rgba(255,255,255,.75); color:#fff; padding-left:7%; max-width:65%; height:185px; line-height:1.3; padding-top:30px; padding-bottom:30px; margin-top:30px; }
#theProducts:after{ content:""; width:0px; height:0px; border-bottom:245px solid rgba(255,255,255,.75); border-right:135px solid transparent; position:absolute; left:100%; top:0px; }
#theProducts img{ display:inline-block; vertical-align:middle; width:20%; max-width:200px; height:auto; margin:0 2%; }



/*CONTACT */
.contact#mainContent{ overflow:auto; }
.contact #moreContent{ margin-top:300px; overflow:visible; white-space:nowrap; height:254px; }
.contact #moreContent:after{  border-bottom:314px solid rgba(243,49,43,.9); }
#theRight{ display:inline-block; vertical-align:top; }
#address{ display:inline-block; margin-left:10%; margin-right:10%; margin-bottom:30px; }
#map{ display:inline-block; vertical-align:top; border:2px solid #000; position:relative; z-index:5; background-color:#fff; }
#map iframe{ display:block; max-width:100%; }
.contact p{ margin-bottom:10px; line-height:1.2; }
#hours{ display:inline-block; vertical-align:top; margin-bottom:30px; }
.raaImg{ margin-left: 10%; display:inline-block; }
.contact .social{ display:inline-block; vertical-align:middle; text-align:center; margin-left:40px; position:relative; z-index:1; }
.contact .social a{ margin:0 7px; }



/*BLOG */
#theBlogs{ max-width:890px; width:90%; margin:300px auto 0; background-color:rgba(255,255,255,.85); padding:30px; }
.article{  }
.article img{ border:rgba(212,208,205,.64) solid 10px; max-width:18%px; }
.article div{ display:inline-block; margin-left:2%; vertical-align:top; max-width:78%; border-bottom:3px solid #d9d9d9; padding:10px 0 20px; }
.article p.date{ font-size:.8em; color:#f3312b; margin-bottom:10px; }
.article .blogTitle{ font-size:1.3em; }
.article .readMore{ color:#f3312b; }

.singleBlog.copy{ margin:40px auto; }
.singleBlog p.blogTitle{ font-size:1.5em; margin-bottom:20px; }
.singleBlog p.date{ font-size:.8em; color:#f3312b; margin-bottom:10px; }
.singleBlog p{ font-size:1em; margin-bottom:15px; }




/*REQUEST AN APPT */
.request-an-appointment #moreContent{ height:390px; }
.request-an-appointment #moreContent:after{ border-bottom:450px solid rgba(243,49,43,.9); }
form .left, form .right{ display:inline-block; vertical-align:top; width:48%; }
form .left{ margin-right:2%; }
form p{ margin-bottom:20px; }
input, select{ width:70%; padding:5px 1%; }
textarea{ width:100%; height:50px; padding:5px 1%; }
.first-name input, .last-name input{ max-width:46%; display:inline-block; }
.app1 input, .app2 input, .app3 input{ max-width:29%; display:inline-block; }
input.wpcf7-submit{ border:0; background-color:rgba(0,0,0,.7); color:#fff; display:inline-block; width:auto; padding:10px 30px; }
.wpcf7-response-output{ position:absolute; border-color:#fff !important; }



/* overlay */
#overlay{ position:absolute; top:0; left:0; right:0; bottom:0; background-color:rgba(0,0,0,.8); z-index:99; opacity:0; }
#overlayWrap{ max-width:1066px; margin:150px auto; padding:0 50px; text-align:center; position:relative; }
#overlayWrap>div{ display:inline-block; vertical-align:middle; }
#overlayWrap #prev, #overlayWrap #next{ font-size:80px; color:rgba(243,49,43,.28); font-family:"Source Pro Sans", sans-serif; font-weight:bold; width:5%; text-align:center; display:none; }
#overlayWrap #prev.active, #overlayWrap #next.active{ display:inline-block; }
#overlayWrap #prev.active:hover, #overlayWrap #next.active:hover{ cursor:pointer; }
#overlayWrap #prev{  }
#overlayWrap #next{  }
#overlayWrap #slideWrap{ width:80%; }
#overlayWrap #slideWrap{ overflow:hidden; }
#overlayWrap ul{  }
#overlayWrap li, #overlayWrap li img, #overlayWrap li>div{ display:inline-block; vertical-align:middle; }
#overlayWrap li img{ max-width:58%; border:3px solid #000; } 
#overlayWrap li>div{ max-width:38%; }
#overlayWrap .pCopy{ margin-left:3%; }
#overlayWrap .pname{ font-size:1.2em; color:#f3312b; text-align:left; }
#overlayWrap .pname span{ color:#fff; }
#overlayWrap .pCopy div{ color:#fff; text-align:left; margin-top:10px; }
#overlayWrap .pCopy div p{ line-height:1.4; }
#closeOverlay{ background-image:url(images/x.png); width:30px; height:30px; z-index:999; position:absolute; top:0; right:0; margin-top:-25px; margin-right:-25px; background-size:cover; }
#closeOverlay:hover{ cursor:pointer; }




@media (min-width:769px){
  .mobile{ display:none; }
	nav#mainNav{ display:inline-block; vertical-align:bottom; position:absolute; right:0; }
	#mainNav ul{ margin-top:35px; }
	#mainNav li{ display:inline-block; color:#000; margin:0 10px; text-transform:uppercase; font-size:.9em; font-weight:600; }
	#mainNav li:last-child{ margin-right:0; }
	#mainNav li:hover, #mainNav li.current-menu-item{ color:#f3312b; }
	.menu-link{ display:none; }
}
@media (min-width:769px) and (max-width:1180px){
  nav#mainNav{ bottom:40px; }
}
@media (max-width:1180px){
  #tagline{ display:block; margin:15px 7% -51px; }
  .home #pageTitle{ top:240px; }

  #aboutKenzo{ max-width:none; height:auto; }
  #aboutKenzo:after{ display:none; }
  #aboutKenzo .imgWrap{ margin-top:0; }

  .stylists #pageTitle{ float:none; }
  .stylists .copy{ margin:0; border:0; display:block; }
  .employee{ width:45%; }
  .employee:nth-child(3n+1){ margin:0 2.5% 20px; }
  .employee:nth-child(3n){ margin:0 2.5% 20px; }
  .employee:nth-child(2n){ margin-right:0; }
  .employee:nth-child(2n+1){ margin-left:0; }
  
  .services #moreContent{ height:auto; }
  .serviceCol{ width:47%; }
  .serviceCol:nth-child(2n+1){ margin-left:0; }
  .serviceCol:nth-child(2n){ margin-right:0; }
  .serviceCol:last-child{ margin-left:52%; }
  
  .contact#mainContent{ padding-bottom:0; }
  .contact #moreContent{ text-align:center; height:auto; margin-bottom:200px; }
  .contact #moreContent:after{ border-bottom:628px solid rgba(243,49,43,.9); }
  #map{ margin:30px auto; }
  #theRight{ display:block; margin-top:30px; text-align:center; }
  #hours, #address{ margin:0px 10% 30px; text-align:left; width:200px; }
  
  
input, select{ width:98%; padding:5px 1%; margin-bottom:5px; }
textarea{ width:98%; height:50px; padding:5px 1%; }
.first-name input, .last-name input{ max-width:98%; display:inline-block; }
.app1 input, .app2 input, .app3 input{ max-width:98%; display:inline-block; }
}
@media (max-width:768px){
body.navOpen{ overflow-x:hidden; width:100%; }
  .dt{ display:none !important; }
  /*#mainNav{ position:absolute; background-image:url(images/nav-icon.png); background-repeat:no-repeat; background-position:top right; left:0; padding-top:40px; top:40px; }
  #mainNav .primaryNav{ display:none; margin-left:-20px; background-color:#f3312b; max-width:80%; min-width:200px; margin-top:-115px; position:relative; }
  #mainNav.open .primaryNav{ display:block; }
  #mainNav ul{ display:block; }
  #mainNav li{ display:block; margin:0 30px; padding:20px 5px; border-bottom:1px solid rgba(255,255,255,.4); font-size:2em; color:#fff; font-weight:normal; }
  #mainNav li:hover, #mainNav li.current-menu-item{ color:#fff; }
*/
#mainNav{ display:none; }
.menu-link{ position:absolute; top:30px; right:30px; color:#f3312b; font-size:40px; }
#mobileNav{ background-color:#f3312b; z-index:999; }
  #closeNav{ background-color:rgba(255,255,255,.4); border-radius:50%; width:30px; line-height:30px; position:absolute; right:20px; top:20px; text-align:center; z-index:999; cursor:pointer; }
.customize-support #mobileNav{ top:25px !important; }
#mobileNav li, #homeBtn{ margin:0 30px; padding:20px 5px; border-bottom:1px solid rgba(255,255,255,.4); font-size:1.6em; color:#fff; font-weight:normal; position:relative; z-index:90; }
#mobileNav li a{ display:block; }
#homeBtn{ display:block; }
  header{ position:fixed; }
  .home header{ height:154px; }
  #tagline{ display:none; }
  #logo, .home #tagline{ display:block; max-width:none; text-align:center; }
  #logo{ padding-right:7%; margin:0 auto; max-width:60%; }
  #tagline{ margin-left:auto; margin-right:auto; }

  .request.mobile{ position:relative; margin-top:0px; display:block; text-align:center; }
  .pageBg{ position:absolute; bottom:auto; height:300px; }
  .home .pageBg{ height:365px; }
  #mainContent{ padding:0 20px; top:300px; }
  .home #mainContent{ top:385px; }
  #pageTitle{ top:-80px; left:-20px; }
  .home #pageTitle{ display:none; }
  .homeTitle{ top:auto; bottom:0; }
  #homeLinks{ position:relative; top:0; height:auto; }
  #homeLinks:before{ display:none; }
  .homeLink{ display:block; margin:30px auto; max-width:140px; }
  .homeLink img{ margin-bottom:0; }
  .homeLink p{ margin-left:0; }
  #theContent, #theBlogs{ margin-top:0; }
  .copy{ padding:30px 0; margin:0; max-width:none; font-size:.8em; }
  #aboutKenzo{ margin:80px -20px 0; width:auto; max-width:none; height:auto; }
  .about #theContent{ margin-bottom:0; }
  #aboutKenzo:after{ display:none; }
  #aboutKenzo .imgWrap{ width:auto; max-width:none; display:block; margin:0 30px 0 0; margin-top:-80px; text-align:center; }
  #aboutKenzo .quote{ width:auto; max-width:none; margin:15px 30px 15px 0; font-size:1em; }
  #aboutKenzo .quote .title{ margin-left:0; }
  #serviceContent{ padding:0; }
  #moreContent{ width:auto; max-width:none; height:auto; margin:0 -20px; padding:30px 20px; }
  #moreContent:after{ display:none; }
  #services .tagline{ display:none; }
  #services ul{ display:block; margin:0; width:auto; margin-left:-20px; }
  #services li{ margin:8px 0; }
  #services li:before{ width:20px; display:inline-block; content:""; margin:0 5px; }
  #services li.hasDesc:before{ background-image:url(images/plus.png); content:"\00a0"; width:20px; line-height:20px; margin:0 5px; display:inline-block; font-size:20px; color:#000; text-align:center; background-size:cover; vertical-align:bottom; }
  #services li.open p.description{ display:block; background-color:rgba(255,255,255,.2); margin:5px 10px 5px 30px; color:#000; padding:10px; font-size:.9em; }
  #services li.open:before{ background-image:url(images/minus.png); }

  .stylists{ background-color:#191919; }
  #styleDarken{ display:none; }
  .stylists #pageTitle{ position:absolute; text-align:center; background-color:rgba(0,0,0,.33); color:#fff; height:80px; line-height:80px; padding-left:7%; font-size:1.875em; font-weight:100; top:-80px; left:-20px; width:auto; }
  .stylists #pageTitle:after{ content:""; width:0px; height:0px; border-bottom:80px solid rgba(0,0,0,.33); border-right:40px solid transparent; position:absolute; left:100%; top:0px; }
  .stylists #pageTitle span{ font-size:1.6em; font-weight:400; }
  .stylists #theContent{ padding:30px 0; }
  .stylists .copy{ margin:0; border:0; }
  .employee{ width:auto; margin:20px auto !important; display:block; }
  #theStylists{ text-align:center; }
  #overlay.stylists{ display:none; }
  .stylists .name{ display:block; padding-left:60px; top:auto; margin-top:-60px; }
  .stylists .zoom{ top:222px; right:auto; left:10px; z-index:1; }
  .stylists .zoom.active{ background-image:url(images/minus.png); }
  .stylists .employee .desc{ overflow:hidden; display:block; height:auto; max-height:0; padding:0 25px; display:block; background-color:#535353; color:#fff;
    -webkit-transition: all 500ms ease-out;
    -moz-transition: all 500ms ease-out;
    -o-transition: all 500ms ease-out;
    transition: all 500ms ease-out;
  }
  .stylists .employee .desc.active{ padding:25px; max-height:500px; }

  #theProducts{ text-align:center; width:auto; max-width:none; padding:0; height:auto; }
  #theProducts:after{ display:none; }
  #theProducts a{ display:block; }
  #theProducts img{ width:auto; display:block; margin:40px auto;  }
  .prodTag{ color:#6c6b6b; font-size:1.5em; text-align:left; max-width:80%; margin:20px auto; }

  footer{ background-color:#d1d1d1; padding:30px; width:auto; top:300px; position:relative; }
  .home footer{ top:365px; }
  #footNav,#yelp{ display:none; }
  #copyright{ }
  #copyright p span{ font-size:14px; color:#000; display:block; margin:10px 0; border:0; }
  #social{ margin-left:0; }
  
  .contact #moreContent{ margin-top:0; margin-bottom:0; white-space:normal; text-align:center; }
  #address, #hours{ display:inline-block; text-align:left; }
  #map{ float:none; }
  .raaImg{ margin-left:0; display:block; }
  .contact .social{ display:block; margin:20px 0; }
  
  .request-an-appointment #moreContent{ height:auto; }
  .request-an-appointment #theContent{ margin-bottom:0; }
}
@media (max-width:420px){
	.menu-link{ right:10px; }
	.stylists #pageTitle{ font-size:1.4em; }
	.stylists .employee .name{ font-size:1.3em; }
}