/* _________________________________________________

320 and Up boilerplate extension

Author: Andy Clarke
Version: 0.9b
URL: http://stuffandnonsense.co.uk/projects/320andup/
_____________________________________________________

1.ROOT
2.HEADINGS
3.TYPOGRAPHY
4.LINKS
5.FIGURES & IMAGES
6.TABLES
7.FORMS (See css/mylibs/forms.css)
8.BANNER header[role="banner"]
9.NAVIGATION nav[role="navigation"]
10.CONTENT
11.MAIN div[role="main"]
12.COMPLIMENTARY div[role="complementary"]
13.CONTENTINFO footer[role="contentinfo"]
14.GLOBAL OBJECTS
15.VENDOR-SPECIFIC 
16.TEMPLATE SPECIFICS
17.MODERNIZR

COLOURS 

*/

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%;
font : inherit;
vertical-align : baseline; }

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display : block; }

/*
abbr[title] { 
border-bottom : 1px dotted; 
cursor : help; }
*/

abbr {
	text-decoration: none;
}

/* 1.ROOT */

html {
overflow-y : scroll;
background-color : #f1f1f1; 
}

body { 
margin : 0 auto;
padding : 0 0 24px;
width : 100%; /*90%  252px */;
font : 100%/1.4 Cambria, Georgia, Times, "Times New Roman";
color : rgb(40,40,40); 
background-color : #f1f1f1; 
min-height: 100%;
display: block;
}

/* 2.HEADINGS */

h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
	font-family: "adrianne-1","adrianne-2",serif;
	font-style: italic;
	font-weight : bold;
 }

h1 { 
margin-bottom : .75em;
font-size : 3em; /* 48 / 16 = 3 */
line-height : 1.2; }

h2 { 
margin-bottom : .75em;
font-size : 2em; /* 36 / 16 = 2 */
line-height : 1.2; }

h3 { 
margin-bottom : 1em;
font-size : 1.5em; /* 24 / 16 = 1.5 */
line-height : 1.3; }

h4 { 
margin-bottom : 1.25em;
font-size : 1.25em; /* 20 / 16 = 1.25 */
line-height : 1.25; }

h5 { 
margin-bottom : 1.5em;
font-size : 1em; /* 16 / 16 = 1 */ }

h6 { 
font-size : 1em; /* 16 / 16 = 1 */ }

header h1 {
	color: #f1f1f1;
	font-size: 2.5em;
	background:#000;
	line-height: 80%;
	border-bottom: 3px solid #000;
	font-weight: normal;
	font-style: italic;
	padding: 10px 0;
	margin: 0;
	text-align: center;
	font-family: "adrianne-1","adrianne-2",serif;
}
header h2 {
	font-size: 1.5em;
	padding: 10px 0 50px 0px;
	text-align: center;
	font-weight: normal;
	margin-bottom: 0.75em;
	-webkit-transition: all 0.1s linear;  
	-moz-transition: all 0.1s linear;  
	transition: all 0.1s linear;  
}
span.header-contents { padding: 10px 0px; }
span.full-scale { display: none; }

.summary-content h1 { 
	font-size: 1.5em; 
	text-shadow: 0 1px 1px white;
	font-weight: normal; 
	font-family: "adrianne-1","adrianne-2",serif;
	font-style: italic;
	padding-bottom: 5px;
	margin-bottom: 5px; 
	line-height: 0.9em; 
/* 	background: black; */
	display: block;
	width: 100%;
	border-bottom: 5px solid black;
}
/* 3.TYPOGRAPHY */

p, 
ol, 
ul, 
dl, 
address { 
margin-bottom : 1.5em; 
font-size : 1em; /* 16 / 16 = 1 */ }

ul, 
ol { 
margin : 0 0 1.5em -24px; 
padding-left : 24px; }

ul { 
list-style-type : disc; }

ol { 
list-style-type : decimal; }

li ul, 
li ol { 
margin : 0;
font-size : 1em; /* 16 / 16 = 1 */ }

dl, 
dd { 
margin-bottom : 1.5em; }

dt { 
font-weight : normal; }

blockquote  { 
margin : 0 0 1.5em -24px; 
padding-left : 24px; 
border-left : 1px solid rgb(200,200,200);
font-style : italic; }

blockquote:before, 
blockquote:after, 
q:before, 
q:after {
content : '';
content : none; }

b, 
strong	{ 
font-weight : bold; }

i, 
em { 
font-style : italic; }

sup, 
sub { 
position : relative;
font-size : 75%; 
line-height : 0; }

sup { 
top : -.5em; }

sub { 
bottom : -.25em; }

address { 
font-style : normal; }

pre { 
margin-bottom : 1.5em; 
white-space : pre; 
white-space : pre-wrap; 
word-wrap : break-word; }

pre, 
code { 
font : .875em 'andale mono', 'lucida console', monospace; 
line-height : 1.5; }

small {
font-size : 1em; /* 16 / 16 = 1 */ }

/* 4.LINKS */

a, 
a:visited {
outline : none;
text-decoration : none; }
 
a:hover { 
outline : none;
/* color : #96B4C4;  */
text-decoration : underline; }
 
a:active, 
a:focus { 
outline : none;
color : rgb(0,0,0); }

/* 5.FIGURES & IMAGES */

figure { margin: 0; }
.site-outline figure { 
/* 	border-bottom: 5px solid black; */
	margin: 0;
	padding: 0;
	max-height: 400px;
overflow: hidden;
	}


figure img,
figure object,
figure embed {
margin-bottom : .75em;
max-width : 200%; }
figure img { 
	margin-bottom: 0;
/* 	position: absolute; top: 0px;   */
}
figcaption {
display : none;
visibility: hidden;
font-weight : normal; 
}

/* 6.TABLES */

table { 
border-collapse : collapse;
border-spacing : 0;
margin-bottom : 1.4em; 
width : 100%;
font-size : .875em; /* 14 / 16 = .875 */ }

th { 
font-weight : bold; }

th, td, caption { 
padding : .25em 10px .25em 5px; }

tfoot { 
font-style : italic; }

caption { 
background-color : transparent; }

/* 7.FORMS (See css/mylibs/forms.css) */

/* 8.BANNER */
/* 9.NAVIGATION */
.site-nav { 
	background: #999; 
	overflow: hidden;  
	margin-top: -64px; 
	float: left; 
	width: 100%; 
	border-top: 3px solid #000; 
	border-bottom: 3px solid #000; 
}
.site-nav ul { 
	list-style: none; 
	margin: 0 auto; 
	display: block;  
	overflow: hidden; 
	width: 320px; 
	padding: 0; 
	text-align: center; 
	display: block; 
	float: none; 
}

.site-nav ul li { 
	overflow: hidden;
	float: left; 
	margin-left: 1%;  
	width: auto;
}
.site-nav ul li a { 
	-webkit-transition: all 0.1s linear;  
	-moz-transition: all 0.1s linear;  
	transition: all 0.1s linear;  
	text-decoration: none; 
	font-size: 1em; 
	font-family: "Helvetica", Arial, sans-serif; 
	padding: 10px 6px; /* border-radius: 25px; */ 
	float: left; 
	text-transform: uppercase; 
	font-weight: bold; 
	letter-spacing: 1px; 
	color: white; 
	text-shadow: 1px 1px 1px #000; 
	width: auto;
}
.site-nav ul li a:hover { background: #000; }
/* 10.CONTENT */
/* 11.MAIN */
.site-outlines { 
	list-style: none; 
	margin: 0 auto;
	float: right;
	display: block;
	padding: 0;
	width: 100%;
	overflow: hidden;
	}
.site-outline { 
	float: left; 
	width: 100%; 
	min-width: 320px; 
	margin-bottom: 10%;
/* 	height: 25em;  */
	overflow: hidden;
}
.site-outline p { margin-bottom: 5px; color: #fff; }
.site-outline article { 
	margin: 0 auto; 
	overflow: hidden; 
	position: relative; 
	-webkit-transition: all 0.2s linear;  
	-moz-transition: all 0.2s linear;  
	transition: all 0.2s linear;  	
	}
.site-outline .summary-content { 
	width: 100%;
	padding: 5px 0px 0px 0px;
/* 	margin-top: 400px; */
	position: relative;
	z-index: 2; 
	-webkit-transition: all 0.2s linear;  
	-moz-transition: all 0.2s linear;  
	transition: all 0.2s linear; 
	display: inline-block;
/* 	background: black; */
}
.section-content { 
	height: 400px;
	width: 100%; 
	display: inline-block; 
	position: absolute;
	border: 1px solid black;
	overflow: hidden;
/* 	display: none;  */
}
.section-content p { display: none; visibility: hidden; }
.section-content p.summary { display: block; margin: 0; display: block; overflow: hidden; position: relative; max-height: 400px; height: 100%; _height: 400px; width: 100%; }
.retired p.summary,
.in-progress p.summary { 
	font-family: "adrianne-1","adrianne-2",serif;
	font-size: 1.2em;
	font-style: italic;
	visibility: visible; 
	_height: auto;
	_width: 100%;
	_background: black;
	background: rgba(0,0,0,0.5);
	}
.section-content span.action { 
	font-family: "adrianne-1","adrianne-2",serif;
	position: absolute; 
	left: 0;
	text-align: center; 
	font-size: 1.2em;
	padding: 0.15em 0.25em;
	width: 100%;
	color: white;
	text-shadow : 0 1px 3px rgb(0,0,0);	
	font-style: italic;
	font-weight: normal;
/* 	text-transform: uppercase; */
	letter-spacing: -1px;
	background: rgba(0,0,0,0.2);
	_background: black;
	cursor: pointer;
	-moz-border-bottom-right-radius: 15px;
	-moz-border-top-right-radius: 15px;
	border-bottom-right-radius: 15px;
	border-top-right-radius: 15px;
	-webkit-transition: all 0.2s linear;  
	-moz-transition: all 0.2s linear;  
	transition: all 0.2s linear; 
	}
.section-content p a { 
	text-align: right;
	visibility: visible;
	display: block; 
	height: 100%; 
	width: 100%; 
	padding-top: 23%;
	margin: 0;
/* 	background: url(../img/preview.png) 50% 50% no-repeat rgba(255,255,102,0.0); */
	background: rgba(255,255,102,0.0);
	-webkit-transition: all 0.2s linear;  
	-moz-transition: all 0.2s linear;  
	transition: all 0.2s linear; 
	text-decoration: none;
	font-style: italic;
	font-size: 2em;
	font-family: "adrianne-1","adrianne-2",serif;	
}
/* .section-content p a:after{ position: absolute; content:' - View Site'; } */
.section-content p a:hover,
.section-content p a:active { background: rgba(255,255,102,0.4);/* background:url(../img/preview.png) 50% 50% no-repeat rgba(255,255,102,0.4); */ }
.section-content a:hover span.action  { 
	background: rgba(0,0,0,0.6);
 }
/* .site-outline:hover .summary-content { 	background: rgba(0,0,0,1); } */
#portfolio,
#resume,
#contact { 
	width: 100%; 
	clear: both; 
	display: block; 
	overflow: hidden; 
	padding-top: 30vh;
	-webkit-transition: all 0.1s linear;  
	-moz-transition: all 0.1s linear;  
	transition: all 0.1s linear; 
	text-align: center;
	}
#contact { margin-left: 25px; }	
#contact li { list-style: none; }
#resume,
#contact { width: auto; margin: 0 auto; }
.main-subhead { display: none; }
.alt-mobile { display: block; }
.city-segment { display: block; clear: both; }
#resume { margin-top: 50px; }
#resume h1,
#contact h1  { margin-bottom: 10px; }
#resume article {  overflow: hidden; }
.resume-segment { width: 100%; margin-bottom: 30px; }
.resume-segment h2, 
.resume-segment dl, 
.resume-segment ul { font-weight: normal; padding-right: 35px; list-style: none; }
.resume-segment h2 { margin-bottom: 10px; }
.resume-segment ul li,
.resume-segment dl,
.resume-segment dd { margin-bottom: 0; }
.resume-segment dl { margin-bottom: 10px; }
.contact-list { font-size: 2em; }

/* 12.COMPLIMENTARY */
.visually-h
{clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;}


/* 13.CONTENTINFO */
.make-tagline { margin: 0 0 2rem; font-size: 2em; }
#hcard-Fredric-Sebastian-Boursier { height: 0px; overflow: hidden; }
/* 14.GLOBAL OBJECTS */

.clearfix { 
zoom : 1; }

.clearfix:before, 
.clearfix:after { 
content : "\0020"; 
display : block; 
height : 0; 
overflow : hidden; }

.clearfix:after { 
clear : both; }

/* 15.VENDOR-SPECIFIC */

body {
-webkit-text-size-adjust : 100%; 
-ms-text-size-adjust : 100%; }

a:link { 
-webkit-tap-highlight-color : rgb(52,158,219); }

::-webkit-selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

::-moz-selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

::selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

/* input[type=search] {
-webkit-appearance : none; }

input[type="search"]::-webkit-search-decoration, 
input[type="search"]::-webkit-search-cancel-button {
display : none; } */

::-webkit-input-placeholder {
padding : 10px;
font-size : .875em; 
line-height : 1.4; }

input:-moz-placeholder { 
padding : 10px;
font-size : .875em; 
line-height : 1.4; }

.ie7 img,
.iem7 img { 
-ms-interpolation-mode : bicubic; }

div,
input,
textarea  { 
-webkit-box-sizing : border-box;
-moz-box-sizing : border-box;
-o-box-sizing : border-box;
box-sizing : border-box; }

/* Non-semantic helper classes */

/* Image replacement */
.ir { 
position: absolute;
display : block; 
text-indent : -999em; 
overflow : hidden; 
background-repeat : no-repeat; 
text-align : left; 
direction : ltr; }

/* Hide for screenreaders and visual browsers */
.hidden { 
display : none; 
visibility : hidden; }

/* Hide visually */
.visuallyhidden { 
position : absolute;
clip : rect(0 0 0 0); 
overflow : hidden;
margin: -1px;
padding : 0;
height : 1px;      
width : 1px;
border : 0; }

/* Allow an element to be focusable via keyboard  */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { 
position : static;
clip : auto; 
overflow : visible;
height : auto; 
margin : 0;   
width : auto; }

/* Hide but maintain layout */
.invisible { 
visibility : hidden; }

/* 16.TEMPLATE SPECIFICS */

#goog-fixurl ul  {
list-style-type : none; }

#goog-fixurl input  {
margin-bottom : 1.5em; }

/* 17.MODERNIZR */

/* MEDIA QUERIES */

/*Print __________________________________________________________________________________________________________ */
@media print {
* { 
background : transparent !important; 
color : black !important; 
text-shadow : none !important; 
filter : none !important;
-ms-filter : none !important; } 

a, a:visited { 
color : #444 !important; 
text-decoration : underline; }

a[href]:after { 
content : " (" attr(href) ")"; }

abbr[title]:after { 
content : " (" attr(title) ")"; }

a[href^="javascript:"]:after, 
a[href^="#"]:after { 
content : ""; }
  
pre, blockquote { 
border : 1px solid #999; 
page-break-inside : avoid; }

thead { 
display : table-header-group; }

tr, img { 
page-break-inside : avoid; }

@page { 
margin : .5cm; }

p, h2, h3 { 
orphans : 3; 
widows : 3; }

h2, h3 { 
page-break-after : avoid; }
}/*/mediaquery*/

/*480px __________________________________________________________________________________________________________ */
@media only screen and (min-width: 480px) {

/* 1.ROOT */
/* 2.HEADINGS */
header h1 {
	padding: 20px 0;
	font-size: 2em;
	background: #333300;
}
header h2 {
	font-size: 2em;
	margin-bottom: 0.75em;
}
span.full-scale { display: inline; }
span.header-contents { padding: 20px 0 0 0; }
.main-subhead { text-shadow: 0 1px 1px white; display: block; }
.alt-mobile { display: none; }
.section-content span.action { width: auto; font-size: 1.75em; }
/* 3.TYPOGRAPHY */
/* 4.LINKS */
/* 5.FIGURES & IMAGES */
figure img { 
max-width: 140%; 
}

/* 6.TABLES */
/* 7.FORMS */
/* 8.BANNER */
/* 9.NAVIGATION */
.site-nav ul { width: 380px; }
.site-nav ul li a { padding: 10px 12px; /* border-radius: 25px; */  }
/* 10.CONTENT */
#portfolio { padding-top: 40px; }
.resume-segment { width: 50% !important; float: left; margin-bottom: 20px; }
.site-outline {	margin: 0 1% 1% 0; }
.resume-segment { width: 100%; }
/* 11.MAIN */
/* 12.COMPLIMENTARY */
/* 13.CONTENTINFO */
/* 14.GLOBAL OBJECTS */
/* 15.VENDOR-SPECIFIC */
/* 16.TEMPLATE SPECIFICS */
/* 17.MODERNIZR */

}/*/mediaquery*/

/*768px __________________________________________________________________________________________________________ */
@media only screen and (min-width: 768px) {

/* 1.ROOT */

/* 1.ROOT */
/* 2.HEADINGS */
.summary-content h1 { font-size: 2em; }
/* 3.TYPOGRAPHY */

/* 4.LINKS */
/* 5.FIGURES & IMAGES */
figure img { max-width: 140%; }

/* 6.TABLES */
/* 7.FORMS */
/* 8.BANNER */
/* 9.NAVIGATION */
/* 10.CONTENT */
.site-outlines { width: 98%; margin: 0 auto; padding: 0; float: none; }
/* 11.MAIN */
/* 12.COMPLIMENTARY */
/* 13.CONTENTINFO */
/* 14.GLOBAL OBJECTS */
/* 15.VENDOR-SPECIFIC */
/* 16.TEMPLATE SPECIFICS */
/* 17.MODERNIZR */

}/*/mediaquery*/

/*992px __________________________________________________________________________________________________________ */
@media only screen and (min-width: 992px) {

/* 1.ROOT */
/* 2.HEADINGS */
header h1 {
	font-size: 2em;
}
	.summary-content h1 { font-size: 3em; }
/* 3.TYPOGRAPHY */
/* 4.LINKS */
/* 5.FIGURES & IMAGES */
/* 6.TABLES */
/* 7.FORMS */
/* 8.BANNER */
/* 9.NAVIGATION */
/* 10.CONTENT */
/* .site-outline article { height: 440px; } */
.site-outlines { width: 992px; float: none; margin: 0 auto; }
.site-outline { margin-bottom: 30px; max-width: 992px; }
/* 11.MAIN */
#resume,
#contact { width: 992px; margin: 0 auto; }

/* 12.COMPLIMENTARY */
/* 13.CONTENTINFO */
/* 14.GLOBAL OBJECTS */
/* 15.VENDOR-SPECIFIC */
/* 16.TEMPLATE SPECIFICS */
/* 17.MODERNIZR */

}/*/mediaquery*/

/*1382px __________________________________________________________________________________________________________ */
@media only screen and (min-width: 1382px) {

/* 1.ROOT */
/* 2.HEADINGS */
/* 3.TYPOGRAPHY */
/* 4.LINKS */
/* 5.FIGURES & IMAGES */
/* 6.TABLES */
/* 7.FORMS */
/* 8.BANNER */
/* 9.NAVIGATION */
/* 10.CONTENT */
/* 11.MAIN */
/* 12.COMPLIMENTARY */
/* 13.CONTENTINFO */
/* 14.GLOBAL OBJECTS */
/* 15.VENDOR-SPECIFIC */
/* 16.TEMPLATE SPECIFICS */
/* 17.MODERNIZR */

}/*/mediaquery*/

/*2x __________________________________________________________________________________________________________ */
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {

/* 1.ROOT */
/* 2.HEADINGS */
/* 3.TYPOGRAPHY */
/* 4.LINKS */
/* 5.FIGURES & IMAGES */
/* 6.TABLES */
/* 7.FORMS */
/* 8.BANNER */
/* 9.NAVIGATION */
/* 10.CONTENT */
/* 11.MAIN */
/* 12.COMPLIMENTARY */
/* 13.CONTENTINFO */
/* 14.GLOBAL OBJECTS */
/* 15.VENDOR-SPECIFIC */
/* 16.TEMPLATE SPECIFICS */
/* 17.MODERNIZR */

}/*/mediaquery*/

/* 
Sources: 
http://meyerweb.com/eric/tools/css/reset
http://people.opera.com/patrickl/experiments/keyboard/test
http://gist.github.com/413930
http://pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap
http://sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars
http://tjkdesign.com/ez-css/css/base.css
http://viget.com/inspire/styling-the-button-element-in-internet-explorer
http://code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing
http://html5doctor.com/html-5-reset-stylesheet/
http://praegnanz.de/weblog/htmlcssjs-kickstart/
http://camendesign.com/design/
http://yui.yahooapis.com/2.8.1/build/base/base.css
http://webaim.org/techniques/css/invisiblecontent/
http://drupal.org/node/897638
*/