html,body,div,span,h1,h2,h3,p,a,em,img,strong,article,section,main,header,footer,dl,dd,dt,table,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
table{border-collapse: collapse;border-spacing: 0;}


/* Character subsetting: -00A0-00A8,-00AA-2017,-2020-2021,-2028-E007F,+00C9,+00E9 */

@font-face {font-family: 'Macho-Light';
	src: url('/fonts/Macho-Light.eot');
	src: url('/fonts/Macho-Light.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/Macho-Light.woff2') format('woff2'),
		 url('/fonts/Macho-Light.woff') format('woff'),
		 url('/fonts/Macho-Light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
	}

@font-face {font-family: 'Macho-Light-Italic';
	src: url('/fonts/Macho-Light-Italic.eot');
	src: url('/fonts/Macho-Light-Italic.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/Macho-Light-Italic.woff2') format('woff2'),
		 url('/fonts/Macho-Light-Italic.woff') format('woff'),
		 url('/fonts/Macho-Light-Italic.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
	}

@font-face {font-family: 'Macho-Bold';
	src: url('/fonts/Macho-Bold.eot');
	src: url('/fonts/Macho-Bold.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/Macho-Bold.woff2') format('woff2'),
		 url('/fonts/Macho-Bold.woff') format('woff'),
		 url('/fonts/Macho-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
	}

@font-face {font-family: 'Libre-Franklin';
	src: url('/fonts/librefranklin-light.woff2');
    font-weight: normal;
    font-style: normal;
	}

@font-face {font-family: 'Libre-Franklin-Italic';
	src: url('/fonts/librefranklin-lightitalic.woff2');
    font-weight: normal;
    font-style: normal;
	}

@font-face {font-family: 'Libre-Franklin-Semibold';
	src: url('/fonts/librefranklin-semibold.woff2');
    font-weight: normal;
    font-style: normal;
	}

body, input, textarea {font-family:'Libre-Franklin', 'Lucida Grande',Arial,sans-serif;font-size:15px;line-height:1.5em;color:#333;background-color: #fefefe;}
h1, h2, h3, h4, strong, th, .name, .worksheet .sub, h3 em, label,.tipue_search_content_bold {font-family:'Libre-Franklin-Semibold',Arial,Helvetica,sans-serif;font-weight:normal;font-style:normal;}
em,.meta,cite,figcaption{font-family:'Libre-Franklin-Italic',Arial,Helvetica,sans-serif;font-weight:normal;font-style:normal;}

h1, h2, h3, h4, strong, th, .name {margin:1.4rem 0;}
h1, h2, .name { font-size: 2.4rem; line-height: 1.1em; }
h2 { margin-top: 4.8rem; }
h3 { font-size: 1.4rem; margin-top: 2.5rem; line-height: 1.2em; }
h4 { font-size: 1.1rem; }
a, a:visited { color: #E03232; }

p, footer, ul, table, nav { margin: 1.2em 0 }
h1 a, .name a{text-decoration: none;}

header { padding-top: 40px; background: #000; margin: 0 auto 2.4rem; }
	header article, header a, header a:visited { color: #fff; }
	header article { background: url(/images/headshot-blue-glasses-cropped.jpg) no-repeat right center; 
		background-size: auto 100%;
		border: none; overflow: hidden;
		margin: 0 auto; width: 400px; padding: 0 253px 10px 0; }
main { margin: 3rem auto; }
footer { color:#a79e97; text-align:center;}
	footer svg { width: 27px; height: auto; vertical-align: middle; }

.type { text-transform: uppercase; font-size: 0.9rem; color: #888; }

.testimonials cite { display: block; text-align: right; }

.talks { margin: 0; padding: 0; }
.talks strong { width: 85px; display: inline-block; text-indent: 0; margin: 0; }
.talks a { white-space: nowrap; }
.talks li { margin: 0; padding: .5rem 0 .5rem 85px; text-indent: -85px; overflow: hidden; line-height: 1.6rem;
	list-style: none; border-bottom: 1px #ccc dotted; font-size: 15px; }
.links { padding: 0; margin: 0; text-indent: 0; display: inline-block; float: right; }
.links a, .links a:visited { margin:0 2px; padding: 4px 6px; background: #e85151; border-radius: 5px; color: #fff; text-decoration: none; }
.links .v,.links .v:visited { background: #BA4185; }

sup { position: relative; margin: .1em 0 0 .1em; line-height: 0; }

label, button { display: block; }
	#search label { display: inline-block; }
input, textarea { margin: .6em 0 1.2em; }
input { width: 200px; }
textarea { width: 80%; }

.booklist { display: flex; justify-content: space-between; width: 80%; margin: 0 auto; }
.booklist div, .booklist cite { display: block; font-size: .9rem; text-align: center; }
figcaption { text-align: center;f }

/* Blog posts */
nav { text-align: right; }
.meta { font-size: .9rem; margin-top: -.3rem; margin-bottom: -.3rem; }
	.post .meta { margin-bottom: 1.4rem; }
.right { float: right; margin: 0 0 .7em .7em; }
.left { float: left; margin: 0 .7em .7em 0; }
.center { margin: 0 auto; display: block; }
.post { margin-bottom: 2rem; margin-top: 0; }
.post h1 { text-align: left; margin-top: .5em;}
.post h2 { font-size: 1.8rem; margin-top: 1.4em; }
.post article { margin: 0 auto; float: none; }
.post table { font-size: .85em; }
	table.bigger-centered { font-size: 1rem; margin: 0 auto; }
	table.bigger-centered td, table.bigger-centered th { padding: 5px 10px; }
.post img { max-width: 100%; }
code { background-color: #f5f5f5; padding: .2em .4em; display: inline-block; border: 2px solid #ccc; font-size: .8em; }
th { background-color: #f5f5f5; }
th, td { border-top: 1px #ccc solid; border-bottom: 1px #ccc solid; padding: 2px 5px; }

/* Worksheets */
.buy a:link, .buy a:visited { font-size: 1.2rem; width: 30%; display: block; margin-right: 5%; background: #e85151; text-decoration: none; padding: 15px 0; text-align: center; border-radius: 5px; color: #fff; }
.buy a:hover { background: #BA4185; }
.worksheet article:nth-child(2) { margin-top: 3rem; border-top: 2px #edc7d9 dotted; }
.worksheet table { margin: 2rem 0;}
.worksheet th { vertical-align: bottom; text-align: left; background-color: #edc7d9; }
.worksheet th, .worksheet td { padding: 10px 15px; }
.worksheet tr:nth-child(odd) { background-color: #faf1f6; }
.budget td:nth-child(2), .budget td:nth-child(3) { width: 40%; }

.worksheets { display:flex; padding: 1.2rem; justify-content: space-between; flex-wrap: wrap; }
	.worksheets a { width: 225px; display: inline-block; margin-bottom: 1.5rem;
		background: #333; color: #fff; text-decoration: none; font-size: .9rem;
		text-align: center; line-height: 1.2rem; padding: 1px 1px .3rem; }
	.worksheets a:hover { background: #E03232; }
	/*.worksheets section img { float: right; margin: 0 0 1.4rem 1.4rem; border: 1px #ccc solid; }*/

/* Tipue Search */
#tipue_search_results_count, #tipue_search_warning { margin-top: 2em; }

@media (min-width: 770px) {
	/* Background pattern from subtlepatterns.com */
	body { background: url(/images/ecailles.png);}
	.name { margin-top: 0; }
	main { width: 750px; padding: 0; }
	.prelude { margin-bottom: 4.8rem; }
	.prelude div:first-child { width: 100%; margin: 1.2rem 0; }
	.prelude div p { width: 653px; margin: 4rem auto 2.4rem; font-size: 1.4rem; line-height: 1.5em}
	.prelude main { display: flex; flex-flow: row wrap; justify-content: space-between; }
	.prelude section { width: 36%; padding: 2.4rem; margin: 0; font-size: 15px;}
	.prelude h2 { font-size: 1.4rem; }
	.prelude section p { margin-bottom: 0;  }

	main h1, main h2, .standalone { text-align: center; }
		main article h2 { text-align: left; margin-top: 1.2rem; }
	section, .post article{ padding: 2.4rem 2.4rem 1.2rem; border: 10px #fff solid; box-shadow: 1px 3px 12px #EAEAEA; margin: 1.2rem 0; background: #fff; }
		section h2:first-child, section h3:first-child, section p:first-child { margin-top: 0; }

	.topics { overflow: hidden; }
	.topics p { display: inline-block; margin: .6em 0; }
	#search { float: right; }

}

@media (max-width: 770px) {
	h1,h2,h3,h4,p,.name,ul,.talks, table, form, pre { margin-left: 2rem; margin-right: 2rem; }
	h2 { margin-top: 3rem; margin-bottom: 1rem; }
	section { margin: 2rem 0;}
	header article { margin: 0; width: auto; }
	.prelude main { margin-top: 0; }

	.posts section { border-top: 1px #ccc solid; padding-bottom: .2rem; }
	.post nav { border-bottom: 1px #ccc solid; margin-bottom: 2.4rem; padding-bottom: 1.2rem; padding-right: 1rem; }
	.post h1 { margin-top: 1.4rem; }
	.post { padding-top: 0; }
	.links { margin: 0.6em 0; float: none; display: block; clear: both; }
	.links a { padding: 5px 10px; }
	/*header+main section:first-child { margin-top: 0; }*/

	.booklist { width: 90%; margin: 4.8rem auto 0; }
	.booklist div { width: 30%; }
	.booklist img { width: 100%; height: auto; }

}

@media (max-width: 700px) {
	header article { background-size: 40%; background-position: right bottom; }
}

@media (max-width: 650px) {
	header article { background: none; padding: 0; }
	.name { font-size: 1.8rem; line-height: 1.2rem; }
}

@media (min-width: 440px) {
	body { font-size:16px; }
	.bookimg { float:right;display:block;margin-left:1em;border:0;padding:0; }
}

@media (max-width: 440px) {
	h1,h2,h3,h4,p,.name,ul,.talks, table, form, pre { margin-left: 1rem; margin-right: 1rem; }
	header { padding-top: 1rem; }
	.bookimg { display: none; }
	h1, h2 { font-size: 1.8rem; line-height: 1.2em; }
	p, li { line-height: 1.6em; }
	section { margin: 1.4rem 0; }
	hr { margin: 2.4rem 0; }
	.booklist { display: block; }
	.booklist div { width: 80%; margin: 0 auto 1.6rem; }
	.booklist img { width: auto; height: auto; }
}
