/* @override 
	http://lodestone.media/styles.css
	https://lodestone.media/styles.css
*/

html,
body
{
	margin: 0;
	padding: 0;
}

body
{
	background-color: #FAF8F3;
}

/* @group generic */

.top_spaced
{
	margin-top: 50px;
}

/* @end */



/* @group fonts and colours */

body,
body p,
body a,
body li,
body dt,
body dd
{
	font-family: 'Avenir Next', 'Muli', Helvetica, Arial, Geneva, sans-serif;
	font-size: 16pt;
}

body,
body p,
body li,
body a
{
	font-weight: 400;
	color: #000;
}

/* @end */

/* @group header */

#logo_banner
{
	text-align: center;
	background-color: #FFC800;
	border-bottom: 1px solid hsl(46, 100%, 48%);
}

#header img#logo_image
{
	height: 180px;
	margin: 30px auto;
}

#header a
{
	text-decoration: none;
}

/* @group main_nav */

#main_nav
{
	margin-top: 15px;
	margin-bottom: 15px;
}

#main_nav ul
{
	text-align: center;
	padding: 0;
	margin: 0;
	list-style-type: none;
}

#main_nav li
{
	display: inline-block;
	font-weight: 400;
	font-size: 16pt;
	padding-right: 35px;
	padding-left: 35px;
	margin: 0;
	list-style-type: none;
}

#main_nav li a
{
	z-index: 1;
	float: left;
	margin-left: 0;
}

#current_page_indicator
{
	z-index: -1;
	margin-right: -20px;
	margin-left: -10px;
	margin-top: -3px;
	float: left;
}

#current_page_indicator img
{
	width: 30px;
}

@media screen and (max-width: 600px )
{
	
#header
{
	background-color: #ffc800;
	padding: 20px 40px;
	display: table;
}
	
#logo_banner
{
	text-align: left;
}

#main_nav ul
{
	text-align: right;
}
	
#header img#logo_image
{
	max-width: 70%;
	height: auto;
	margin: 0;
}

#header a
{
	display: inline-block;
}

#logo_banner,
#main_nav
{
	width: 49%;
	display: inline-block;
	display: table-cell;
	vertical-align: middle;
}

#main_nav
{
	margin: 0;
}

#main_nav li
{
	display: list-item;
	padding: 0;
}

#main_nav li a
{
	float: none;
}

#current_page_indicator
{
	display: none;
}
	
}

/* @end */

/* @end */

/* @group Make footer stick to the bottom */

#wrapper
{
	display:  flex;
	flex-direction: column;
	min-height: 100vh;
}

#content
{
	flex: 1;
}

/* @end */

#foot_banner
{
	text-align: center;
	background-color: #ffc800;
	padding: 11px 10px 10px;
	border-top: 1px solid hsl(46, 100%, 48%);
}

#foot_banner .copyright_info
{
	font-size: 10pt;
}

/* @group content */

#content
{
	text-align: center;
	padding: 40px 0 40px 40px;
	line-height: 1.4;
}

#content ul
{
	padding: 0 0 0 20px;
}

#content p,
#content li
{
	
	margin: 0 0 20px;
}

#content li
{
	padding: 0 0 0 26px;
	list-style: none;
	background-image: url("images/bullet.png");
	background-repeat: no-repeat;
	background-position: left 7px;
	background-size:15px;
}

#content li ul
{
	padding: 0;
}

#content li li
{
	margin-bottom: 0;
}


#page_title
{
	vertical-align: top;
	display: inline-block;
	clear: none;
	float: left;
	max-width: 70px;
}

#page_content{
	margin-left: 70px;
	text-align: right;
	margin-right: 7%;
}

.block
{
	margin-bottom: 40px;
}

.column
{
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin: 0 0 0 60px;
}

.half_column
{
	max-width: 40%;
}

@media screen and (max-width: 1200px ) {
	
#page_content
{
	margin-right: 20px;
	text-align: left;
}

.column,
.half_column {
	width: auto;
	max-width: 100%;
	margin: 0 0 0 15%;
}

}

@media screen and (max-width: 600px ) {
#content
{
	padding: 5%;
}
	
}

/* @end */

/* @group portfolio */

.portfolio_item_title,
.big_title
{
	font-weight: 400;
	font-size: 30pt;
	background-image: url("images/yellow-disc.png");
	background-repeat: no-repeat;
	background-position: 0 16px;
	background-size:50px;
	padding: 15px 0 15px 15px;
	margin-left: -15px;
	margin-bottom: 20px;
}

/* Stop portfolio images from getting larger than the column they're in */
.half_column img.portfolio_img
{	
	max-width: 100%;
}

img.portfolio_img
{
	margin: 0 0 10px;
}

dt
{
	font-weight: 600;
}

dd
{
	margin-bottom: 20px;
	margin-left: 20px;
}



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

.portfolio_item_title,
.big_title
{
	font-weight: 400;
	font-size: 20pt;
	background-image: url("images/yellow-disc.png");
	background-repeat: no-repeat;
	background-position: 0 14px;
	background-size: 36px;
	padding: 14px 0 14px 14px;
	margin-left: -14px;
	margin-bottom: 15px;
}
	
}

/* @end */

/* @group thumbs */

.thumb_grid
{
	text-align: right;
}

.thumb_box
{
	display: inline-block;
	position: relative;
	text-align: left;
	border: thin solid rgba(0,0,0,0.05401862);
	margin: 0 10px 10px 0;
}

.thumb_box,
.thumb_box img.thumb
{
	max-width: 250px;
}

.thumb_box a
{
	padding: 0;
}

.thumb_box img.thumb
{
	z-index: -1;
}

.thumb_title
{
	background-color: #ffc800;
	max-width: 150px;
	padding: 5px;
	z-index: 1;
	position: absolute;
	display: inline-block;
	right: 0;
	bottom: 20px;
}

.thumb_title a
{
	text-decoration: none;
}

/* @end */

/* @group testimonials */

.display_testimonial_block
{
	padding: 40px;
	display: inline-block;
}

.testimonial_block
{
	margin-bottom: 40px;
}

blockquote.display_testimonial,
blockquote.testimonial
{
	font-style: italic;
	background-image: url("images/open-quote.png");
	background-repeat: no-repeat;
	background-position: left top;
}

blockquote.display_testimonial
{
	font-size: 24pt;
	background-size: 60px;
	margin: -25px 0 0;
	padding: 25px 0 0 35px;
	line-height: 1.1;
}

blockquote.testimonial
{
	background-size: 50px;
	margin: -19px 0 0;
	padding: 19px 0 0 29px;
}

blockquote.testimonial p
{
	margin-bottom: 15px !important;
}

.display_testimonial_attribution,
.testimonial_attribution
{
	margin-left: 60px;
	text-align: right;
	font-size: 13pt;
	margin-top: 12px;
}

/* Show em dash before testimonial attribution
.display_testimonial_attribution:before,
.display_testimonial_attribution::before,
.testimonial_attribution:before,
.testimonial_attribution::before
{
	/* em dash *!/
	content: "\2014";
	color: rgba(0,0,0,0.5);
	margin-right: 5px;
	margin-left: -1em;
}
*/

/* @end */

