/*
Theme Name: 	Authorized Photo Service
Author:         Derek Ashauer
Author URI:     http://www.ashwebstudio.com
*/
@import url(https://fonts.googleapis.com/css?family=Exo:700|Lato:400,300,700,400italic,700italic);
/* Resets */
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, 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, article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup,  menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 120%; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
input { vertical-align: middle; }
input[type="submit"] { cursor: pointer; }

/* WordPress required styles */
.alignright { float: right; margin: 0 0 10px 15px; }
.alignleft { float: left; margin: 0 15px 10px 0; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption-text { font-size: 70%; color: #666; font-style: italic; }

/* ----------------------------------- */
/* COMMON
/* ----------------------------------- */
body { background: #ffd522; text-align: center; }
p, div, li, h1, h2, h3, h4, td, th, input, select, textarea { font: normal 18px/1.48 "Lato", sans-serif; color: #4d4d4d; }
p, h1, h2, h3, h4, section ul, section ol, section table { margin-bottom: 15px; }
h1, h2, h3 { line-height: 1.1; }
a img, :link img, :visited img { border: none }
a { color: #c1371d; text-decoration: underline; }
a:hover { color: #d8705c; }
div.clear { clear: both; overflow: hidden; height: 1px; }
input { vertical-align: middle; }
.cf:before, .cf:after { content: " "; display: table; }
.cf:after { clear: both; }
.cf { *zoom: 1; }
.gfield { margin-left: 0 !important; }

.scrolled #header, .scrolled #header #logo img, .scrolled #header #logo {
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

#wrapper { position: relative; width: 100%; }
.container { width: 100%; max-width: 1060px; margin: 0 auto; text-align: left; }

.button { font-family: 'Exo', sans-serif; font-weight: 700; text-transform: uppercase; font-size: 22px; display: inline-block; border: none; background: #c1371d; color: #FFF; padding: 7px 16px; text-decoration: none; cursor: pointer; }
.button:hover { background: #ffd522; color: #000; }


/* ----------------------------------- */
/* HEADER
/* ----------------------------------- */
#header { position: fixed; left: 0; top: 0; width: 100%; z-index: 99; padding-top: 65px; }
#header .container { max-width: 90%; padding: 0 5%; }

#logo { float: left; font-style: italic; font-size: 16px; color: #FFF; text-decoration: none; }
#logo img { display: block; margin: 0 0 8px 0; width: 322px; height: auto; }

#phone { margin: 28px 0 10px 0; float: right; color: #FFF; background: transparent url(images/phone.png) 0 center no-repeat; padding-left: 40px; font-size: 14px; }
#phone a { color: #FFF; text-decoration: none; }

#header nav { float: right; clear: right; }
#header nav li { float: left; list-style: none; margin: 0 0 0 35px; padding: 0 0 10px 0; position: relative; }
#header nav li a { text-decoration: none; font-size: 14px; text-transform: uppercase; color: #FFF; text-decoration: none; }
#header nav li a:hover, #header nav li.current-menu-item a { color: #ffd522; }

#header nav li { position: relative; }
#header nav li .sub-menu { left: -9999em; position: absolute; top: 35px; z-index: 100; background: #FF0000; padding: 7px 20px 15px 20px; }
#header nav li:hover .sub-menu { left: 0; }
#header nav li .sub-menu li { float: none; border: none; background: none; margin: 0; padding: 0; }
#header nav li .sub-menu li:before { display: none; }
#header nav li .sub-menu a { color: #FFF; background: none; padding: 0; white-space: nowrap; height: auto; line-height: 1.4; margin: 3px 0 0 0; font-size: 15px; text-transform: none; }
#header nav li .sub-menu a:hover { color: #CCC; }
.sub-menu:before { content:""; position:absolute; top:-10px; left:20px; bottom:auto; left:auto; border-width:0 10px 10px; border-color:#FF0000 transparent; z-index: 50; border-style:solid; display:block; width:0; }

#mobile-menu { display: none; }

.scrolled #header { background: rgba(30,30,30,.9); padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.scrolled #header #logo img { width: 250px; height: auto; }
.scrolled #header nav { margin-top: 7px; }
.scrolled #logo { font-size: 12px; }
.scrolled #phone { margin: 0 0 5px 0; }

/* ----------------------------------- */
/* HOME
/* ----------------------------------- */
#banner { background: #1e1e1e url(images/banner.jpg) center center no-repeat; background-size: cover; padding: 280px 0 300px 0; position: relative; }
#banner .container { text-align: center; }
#banner h1 { max-width: 720px; margin: 0 auto 40px auto; color: #FFF; font-size: 56px; font-weight: 300; }
#banner ul { max-width: 960px; margin: 0 auto; }
#banner li { display: inline-block; vertical-align: middle; width: 19%; list-style: none; color: #FFF; padding: 0 5%; text-align: center; font-size: 17px; }
#banner li:nth-child(1) { border: none; }
#banner li:nth-child(2) { width: 30%; border-left: 1px solid rgba(255,255,255,.5);; border-right: 1px solid rgba(255,255,255,.5); }
#banner li h2 { font-style: italic; color: #ffd522; font-size: 22px; font-weight: 300; }
#banner li p { color: #FFF; font-size: 15px; }
#banner .button { padding: 15px 40px; }
#banner a { color: #FFF; text-decoration: none; }
#banner:before {
  content: '';
  position: absolute;
  right: 0;
  top: -100px;
  overflow: visible;
  width: 100%;
  height: 100px;
  background: #ffd522;
  z-index: 1;
  -webkit-transform: skewY(3deg);
  -moz-transform: skewY(3deg);
  -ms-transform: skewY(3deg);
  -o-transform: skewY(3deg);
  transform: skewY(3deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: initial;
}
#banner:after {
  background: #FFF;
  bottom: 0;
  content: '';
  display: block;
  height: 200px;
  left: 0;
  position: absolute;
  right: 0;
  transform: skewY(-5deg);
  transform-origin: 100%;
  z-index: 1;
}


#welcome { background: #FFF; position: relative; z-index: 1; padding: 100px 0; }
#welcome:after {
  background: inherit;
  bottom: 0;
  content: '';
  display: block;
  height: 200px;
  left: 0;
  position: absolute;
  right: 0;
  transform: skewY(-5deg);
  transform-origin: 100%;
  z-index: -1;
}

#steps { margin: 0 0 75px 0; }
#steps li { width: 29%; float: left; padding: 0 2%; counter-increment: item; list-style: none; position: relative; }
#steps p { font-size: 20px; color: #000; line-height: 1.1; padding-left: 70px; }
#steps p a { font-size: 14px; text-transform: uppercase; }
#steps li:before { 
	width: 70px;
	text-align: center;
   	content: counter(item);
   	color: #ffd522;
	font-size: 80px; 
	font-weight: 700;
	font-family: "Exo", sans-serif;
   	float: left; 
	line-height: 1;
}
#steps li:after { position: absolute; top: -90px; left: 0; width: 100%; text-align: center;}
#steps li:nth-child(1):after { content: url(images/icon-clipboard.png); }
#steps li:nth-child(2):after { content: url(images/icon-box.png); }
#steps li:nth-child(3):after { content: url(images/icon-camera.png); }

#welcome h2 { font-size: 30px; text-transform: uppercase; color: #ffd522; font-weight: 700; font-family: "Exo", sans-serif; margin: 0 0 30px 0; }
#welcome-box-content { border: 1px solid #ffd522; width: 52%; padding: 35px 8% 35px 5%; }
#welcome-box-content p { font-size: 20px; font-style: italic; }
#welcome-box { position: relative; }
#welcome-box:after { content: " "; /*background: transparent url(images/authorized-camera.png) center center no-repeat;*/background: transparent url(images/authorized-camera-all3-cam-sm.png) center center no-repeat; background-size: 100% auto; height: 500px; width: 433px; position: absolute; right: 0; top: -145px; }

#spacer { height: 550px; background: transparent url(images/spacer.jpg) center center no-repeat; background-size: cover; position: relative; }
#spacer:after {
  background: #1e1e1e;
  bottom: -200px;
  left: 0;
  right: 0;
  content: '';
  display: block;
  height: 200px;
  position: absolute;
  transform: skewY(5deg);
  transform-origin: 100%;
}

#faq { background: #1e1e1e; padding: 100px 0 200px 0; position: relative; }
#faq .container { max-width: 760px; }
#faq dl { margin: 0 0 100px 0; }
#faq dt { cursor: pointer; font-size: 20px; color: #FFF; text-decoration: none; font-weight: bold; border-bottom: 1px solid #4e4e4e; padding-bottom: 7px; margin-bottom: 7px; display: block; }
#faq dd { display: none; margin: 0 0 15px 0; }
#faq dd, #faq dd p { color: #ababab; }
#faq dt { background: transparent url(images/plus.png) right center no-repeat; padding-right: 30px; }
#faq dt.active { background-image: url(images/minus.png); }
#faq p { text-align: center; color: #FFF; }
#faq .button { padding: 15px 40px; }
#faq a { color: #FFF; text-decoration: none; }
#faq:after {
  background: #ffd522;
  bottom: -200px;
  left: 0;
  right: 0;
  content: '';
  display: block;
  height: 200px;
  position: absolute;
  transform: skewY(5deg);
  transform-origin: 100%;
}


/* ----------------------------------- */
/* SUB PAGES
/* ----------------------------------- */
#page-header { background: #1e1e1e url(images/banner.jpg) center center no-repeat; background-size: cover; height: 370px; position: relative; }
#page-header:before {
  content: '';
  position: absolute;
  right: 0;
  top: -100px;
  overflow: visible;
  width: 100%;
  height: 100px;
  background: #ffd522;
  z-index: 1;
  -webkit-transform: skewY(3deg);
  -moz-transform: skewY(3deg);
  -ms-transform: skewY(3deg);
  -o-transform: skewY(3deg);
  transform: skewY(3deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: initial;
}
#page-header:after {
  background: #FFF;
  bottom: 0;
  content: '';
  display: block;
  height: 200px;
  left: 0;
  position: absolute;
  right: 0;
  transform: skewY(-5deg);
  transform-origin: 100%;
  z-index: 1;
}

#main { background: #FFF; position: relative; z-index: 1; padding: 10px 0 250px 0; }
#main:after {
  background: #ffd522;
  bottom: -200px;
  left: 0;
  right: 0;
  content: '';
  display: block;
  height: 200px;
  position: absolute;
  transform: skewY(5deg);
  transform-origin: 100%;
}

#main section { float: left; width: 65%; }
#main li { margin-left: 25px; }
#main h1 { font-size: 50px; font-weight: bold; color: #a8a8a8; font-family: 'Exo', sans-serif; }
#main h2 { font-size: 30px; font-weight: bold; color: #a8a8a8; font-family: 'Exo', sans-serif; }
#main h3 { font-size: 22px; color: #a8a8a8; margin: 0 0 5px 0; font-family: 'Exo', sans-serif; }
#main img { max-width: 100%; height: auto; }
#main .highlight { font-size: 24px; color: #c1371d; }

#main aside { float: right; width: 25%; border: 1px solid #ffd522; padding: 50px 25px 150px 25px; position: relative; overflow: hidden; }
#main aside:before {
  content: '';
  position: absolute;
  right: 0;
  top: -80px;
  overflow: visible;
  width: 100%;
  height: 100px;
  background: #ffd522;
  z-index: 1;
  -webkit-transform: skewY(-3deg);
  -moz-transform: skewY(-3deg);
  -ms-transform: skewY(-3deg);
  -o-transform: skewY(-3deg);
  transform: skewY(-3deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: initial;
}
#main aside:after {
  background: #ffd522;
  bottom: -100px;
  left: 0;
  right: 0;
  content: '';
  display: block;
  height: 200px;
  position: absolute;
  transform: skewY(5deg);
  transform-origin: 100%;
}
#main aside h2 { font-family: "Lato", serif; font-style: italic; font-size: 22px; font-weight: 300; text-align: center; }
#main aside .button { display: block; width: 100%; padding-left: 0; padding-right: 0; text-align: center; }
#main aside p { text-align: center; font-size: 14px; }
#main aside ul { margin: 40px 0; }
#main aside li { list-style: none; padding: 7px 0; border-bottom: 1px solid #EFEFEF; }
#main aside a { color: #666; text-decoration: none; }
#main aside a:hover { color: #333; }
#main aside a.button { color: #FFF; }

.page-template-tpl-two-column #main section { width: 45%; }
.page-template-tpl-two-column #main #column2 { width: 45%; float: right; }

/* ----------------------------------- */
/* FOOTER
/* ----------------------------------- */
#footer { padding: 100px 0; position: relative; z-index: 10; }
#footer .container { text-align: center; }
#footer #copyright { font-size: 13px; text-transform: uppercase; margin-top: 50px; }

/* ----------------------------------- */
/* MOBILE
/* ----------------------------------- */

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

	#logo img { height: 40px; width: auto; }
	#logo { font-size: 12px }
	
	#phone { margin-top: 10px; }
	#header nav li { margin-left: 20px; }

}

@media screen and (max-width: 1060px) {
	
	.container { padding-left: 5%; padding-right: 5%; width: 90%; }
	
	#header .container { text-align: right; }
	#phone, #header nav { display: inline-block; float: none; vertical-align: middle; }
	
	#mobile-menu { display: inline-block; font-size: 30px; color: #ffd522; line-height: 1; margin-left: 30px; }
	#header nav { clear: none; }
	#header nav ul { display: none; }
	#header nav.open #mobile-menu { position: absolute; top: 15px; right: 15px; z-index: 999; }
	#header nav.open ul { display: block; float: none; clear: both; padding-top: 30px; }
	#header nav ul { overflow-y: scroll; position: fixed; z-index: 998; top: 0; right: -230px; margin: 0; background: #000; width: 230px; height: 100%; float: none; }
	#header nav li { display: block; float: none; font-size: 16px; text-align: center; margin: 0; padding: 0; text-align: left; }
	#header nav li:before { display: none; }
	#header nav li a { color: #FFF; padding: 10px 20px; height: auto; font-size: 15px; display: block; }
	#header nav li .sub-menu { position: static; background: #333; display: none; padding: 10px 0 20px 0; margin: 0; }
	#header nav li .sub-menu.active { display: block; }
	#header nav li .sub-menu li { border: none; padding: 2px 20px; }
	#header nav li .sub-menu li a { font-weight: normal; font-size: 15px; padding: 5px 0; }
	#header nav li .sub-menu li a:hover { color: #c3ddea; }
	#header nav li.current_page_item a { border: none; }
	.sub-menu:before { display: none; }
	
	#welcome h2 { text-align: center; }
	#welcome-box-content { border: 1px solid #ffd522; width: 90%; padding: 0; border: none; }
	#welcome-box:after { background-position: center center; background-size: auto 100%; height: 250px; width: 100%; position: static; text-align: center; display: inline-block; margin: 40px auto 0 auto; }
	
	#spacer { height: 400px; }

}
@media screen and (max-width: 800px) {
	
	#logo span { display: none; }
	
	#banner { padding-top: 175px; }
	#banner h1 { font-size: 36px; }
	
	#spacer { height: 300px; }

	#page-header { height: 200px; }
	#page-header:after { height: 150px; bottom: -80px; }
	#main { padding: 50px 0 100px 0; }
	#main section, #main aside, #column2,
	.page-template-tpl-two-column #main section,
	.page-template-tpl-two-column #main #column2 { width: 100%; float: none; margin: 0 0 50px 0; }
	#main aside { width: 90%; padding-left: 5%; padding-right: 5%; }
	
}
@media screen and (max-width: 600px) {
	
	#logo img { max-width: 170px; height: auto; }
	#phone { display: none; margin-top: 4px; background: none; padding-left: 0; }
	#mobile-menu { margin-left: 15px; margin-top: -4px; }
	
	#banner h1 { font-size: 28px; }
	#banner li { display: block; width: 100% !important; padding: 0; }
	#banner li:nth-child(2) { border: none; border-top: 1px solid rgba(255,255,255,.5);; border-bottom: 1px solid rgba(255,255,255,.5); padding: 25px 0; margin: 40px 0; }
	
	#spacer { height: 250px; }
	
	#welcome { padding-top: 0; }
	#steps li { width: 100%; float: none; padding: 0; clear: left; margin: 0 0 30px 0; }
	#steps li:before { font-size: 50px; }
	#steps li:after { display: none; }
	
	#faq dt { font-size: 18px; }
	
	#main h1 { font-size: 36px; }
	#main h2 { font-size: 28px; }
	#main h3 { font-size: 22px; }
	
}

/* ----------------------------------- */
/* UPDATES
/* ----------------------------------- */