@charset "utf-8";
@import url(http://fonts.googleapis.com/css?family=Alex+Brush);
/* @statements must be the first things in a css file
	@charset should come before @import (if both are specified) */

/*
==================================================
THINGS THAT I WOULD PUT IN PRETTY MUCH ANY CSS FILE
==================================================
*/

/* url() doesn't require " or ' but spaces have to be escaped if not quoted (why would you have spaces?)
	note that url() is relative to the css (not the document) so if the page is index.html and the css is include/style.css and a background is images/background.jpg then the css would be background:url("../images/background.jpg") or background:url("/images/background.jpg") or possibly background:url("http://host.domain.tld/images/background.jpg") */
/* that does bring to light another thing I just started realizing
	I used to always do sitename.html/sitename.css as a default naming convention (instead of index.html/style.css)
	I eventually started doing the latter and am now it's becoming difficult to tell different sites' files apart */
/* css3's support is widely varied between browsers
	a good site for see what is supported and to what extent (http://www.w3schools.com/cssref/css3_browsersupport.asp)
	also note that css3 is largely unsupported by the w3 css validator (http://jigsaw.w3.org/css-validator/) so expect plenty of errors as you start diving into it */
/* there are multiple measurement units (em, %, px, pt, etc...)
	em is popularly used for fonts and px is normal for images (although % is becoming more common for adjustable-width pages)
	px would seem the most logical unit for fonts but it doesn't allow users to increase/decrease the font size in some browsers (most browsers prefer zooming the whole page as opposed to the text so it's less of an issue)
	em and % work similarly (both are relative measurements) but they increase/decrease a little differently (my understanding is that % doesn't jump sizes as dramatically as em)
	1em is equal in width to the size of how the browser would render 1 capital M (usually 16px but Opera Mobile uses 12px instead of 16px as its default size)
	let's say we're wanting a 12px font for a smaller-sized text (remember that em is based on the size of its parent font size)
	if the parent is 1em then 12px would be 0.75em (16 / 12 = 0.75) but if the parent is 1.15em then 0.75em doesn't work (16 x 1.15 / 12 = 0.65)
	a similar thing happens with "small"
	let's say we have some text that we just want to display smaller than the rest
	we set font-size:0.75 for that text but if there is semantically "small" text within that then we have to set small {font-size:1em} or it will be smaller than the already small text
	boy cascading and proportional fonts is fun
	there is a new unit of "rem" though
	it is relative to the root element (html) size */
/* font-size:100% fixes some font resizing problems (not sure what they are but it's recommended)
	text-size-adjust (not an official css component) keeps the iphone from making the text bigger when it goes to landscape
	overflow-y:scroll always shows the vertical scrollbar (keeps short pages from moving to the right by 20px-ish) */
html { font-size:100%; overflow-y:scroll; }
/* supposedly helps keep text the same size when switching from portrait to landscape
	it's been found that none makes webkit-based desktop browsers not zoom so replace none with 100%
	most browsers don't understand 100% so keep none as a fallback */
body { -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; -webkit-text-size-adjust:100%; -moz-text-size-adjust:100%; -ms-text-size-adjust:100%; }
/* browsers will automatically render elements they dont know (like these html5 ones) as inline so we tell the browser to render them as block
	this is mostly for IE8 and earlier
	if you're going to use html5 elements you should also use html5shiv (http://code.google.com/p/html5shiv/) or something similar */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section { display:block; }
/* it helps screen readers to use <abbr> for abbreviations in html
	it's fashionable to let the visual user know that it's an abbreviation and that they can mouse over it to see what it stands for
	use border-bottom instead of text-decoration (you can't dot an underline) */
/*abbr { text-transform: uppercase; }*/
abbr[title],
dfn[title] { border-bottom:1px dotted; cursor:help; }
/* "a" will already have an underline so we don't want to underline it a second time with abbr */
a abbr[title],
a dfn[title] { border:none; }
/* <img border="0"> doesn't validate */
/* iframe normally has a border (uggg) but html5 gave iframe a borderless option
	irritatingly enough internet explorer 8 will put the border in regardless of this css declaration */
img,
iframe { border:none; max-width:100%; }
/* internet explorer scales images very badly */
img { -ms-interpolation-mode:bicubic; }
/* css selectors (like [href=""]) are good as they keep you from having class-itis */
/* put a little icon to the right of an external link (or link that opens in another window, in this case) */
/*a[href^="http:"],*/
a[target="_blank"] { background:url(Icon_External_Link.png) right center no-repeat; padding-right:13px; }
.navigation a[target="_blank"] { background:none; padding-right:0; }
/* I can't think of many times that you actually want a border around a first list item but I can think of many times that you don't (you can always comment this out) */
/*li:first-of-type { border: none !important; }*/
/* <nav> is a sectioning element and is supposed to have a heading (but we don't have to see it) - remember the cascade?  we have to display:block any other <nav><h2> that we actually want to see later */
/*nav h2 {display:none;}*/
/* td and textarea has an annoying way of not inheriting font-family
	unnecessary if not using them but still useful to know */
td,
textarea { font-family:inherit; font-size:inherit; }
/* every element within <form> that has the required attribute will get this (<input required> for instance)
	:required, :invalid, and :valid are css3 pseudo-classes and don't validate with w3 css validator
	you could do [required] as a css2 option but it's nice to have a visual confirmation that your entry is valid ([required] would always show even when they've entered valid data)
	some browsers do similar things automatically and this might be on top of what they are already doing
	a good page about form accessibility (http://www.sitepoint.com/fancy-form-design-css-7/) */
/*[required] { }
:required:focus:invalid { box-shadow:0 0 5px #ff0000; }
:required:focus:valid { box-shadow:0 0 5px #00cc00; }*/
.form form { text-align:left; line-height:1.5em; }
.form form * { width:250px; max-width:100%; }
.form label,
.form input,
.form select,
.form textarea { display:block; }
.form textarea { overflow:auto; height:10em; }
.form [type="radio"],
.form [type="reset"],
.form [type="checkbox"],
.form [type="submit"] { display:block; margin:0; padding:0; width:auto; }
.form label.radio { position:relative; margin:0 -20px 0 20px; }
.form label.radio [type="radio"],
.form label.radio [type="checkbox"] { position:absolute; top:5px; left:-20px; }
.form fieldset { border:none; margin:0; padding:0; }
.form fieldset textarea { height:250px; }
.form label small,
.form label strong,
.form .required { text-transform:uppercase; color:#ff0000; font-size:0.75em; }
@-ms-viewport{ width:device-width; }
@-viewport{ width:device-width; }

/*
==================================================
GENERAL SITE SPECIFIC STUFF
==================================================
*/

/* these are things that should apply to the site as a whole */
/* I used to do position:relative on body, but realized that you can't fix something to the bottom of the window if the page doesn't go down that far
	<html> is position:relative by default so the page already has something relatively positioned */
html {}
/* why do <div id="body" style="width:960px"> when you can just do body {width:960px;}
	margin:auto centers <body> in the window (no need for <center>)
	text-align:center centers the text in <body> */
body { position:relative; margin:0; background:#d8d2ce url(d8d2ce-796a60.gif); color:#000000; font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif; }
/* a word of advise about cascading...
	a {} changes EVERY <a> on the page so you'll have to explicitly make a change later if you want it to be different */
a { }
/* browsers render address italicized */
address { font-style:normal; }
dt { font-weight:bold; margin-top:1rem; }
dt:first-of-type { margin-top:0; }
dt:after { content:":"; }
/* no indention */
dd { margin:0; }
h1,
h2,
h3,
h4,
h5,
h6,
.siteheading,
.pageheading,
.articleheading { margin:0; font-family: 'Alex Brush', cursive; font-weight:normal; }
h1 { font-size:2.5em; }
h2,
.articleheading { font-size:2em; }
h3 { font-size:1.5em; }
h4,
h5,
h6 { font-size:1em; }
h1:not(:first-of-type),
h2:not(:first-of-type),
h3:not(:first-of-type),
h4:not(:first-of-type),
h5:not(:first-of-type),
h6:not(:first-of-type) { margin-top:1em; }
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a { color:inherit; text-decoration:none; }
/* translucient borders */
.box { margin:1rem; padding:1rem; border:1rem solid rgba(255, 255, 255, 0.5); background-clip:padding-box; background-color:#f8f8f8; color:#080808; }
#header,
#navigation li,
#sitelinks h2,
.copyright { text-align:center; background:#f8f8f8; color:#080808; border:1px solid #796a60; }
#header { border-top:none; border-right:none; border-left:none; }
.siteheading { font-size:3em; text-transform:lowercase; }
.siteheading a { display:block; width:100%; height:100%; text-decoration:none; color:inherit; }
#navigation { text-align:center; }
#navigation a { padding:1rem; padding-right:0; padding-left:0; text-decoration:none; color:inherit; }
#navigation a:hover { background:#d8d2ce; }
.pageheading { text-align:center; }
.home .pageheading,
.post .articleheading { display:none; }
#content footer { font-size:0.75em; }
/* no dot or indention */
.navigation { list-style:none; padding:0; }
.navigation a { display:block; width:100%; height:100%; }
/* back to top links */
.backtotop { text-align:right; color:inherit; text-decoration:none; text-transform:lowercase; }
/* content requires ascii hex values (http://css-tricks.com/css-content/)
	get the html entity (http://css-tricks.com/snippets/html/glyphs/)
	then convert to hex (http://www.evotech.net/articles/testjsentities.html) */
.backtotop:after { content:" \2191"; }
#sitelinks h2 { padding:1rem; border-right:none; border-left:none; }
/* 115px and -9999px */
.sitelink { height:7.1875rem; background-repeat:no-repeat; text-indent:-624.9375rem; }
.sitelink:first-of-type { margin-top:0; }
/* Windows Phone 8 Internet Explorer 10 gets these styles
.no-touch .sitelink { opacity:0.5; }
.no-touch .sitelink:hover { opacity:1; }
*/
/* give a solid color in case the browser doesn't support gradients */
/* if you want an image on top of a gradient you must specify the image first */
.sitelink.flc { background-color:#244367; background-image:url(sites-flc-115x115.png), linear-gradient(to bottom, #244367 0%, #195ea2 50%, #244367 100%); background-position:center center; background-size:contain, contain; }
.sitelink.krisjackson { background-image:url(sites-krisjackson-450x234.jpg); background-position:left top; background-size:cover; }
/* give a solid color in case the browser doesn't support gradients */
.sitelink.babygirl { background-color:#000000; background-image:url(sites-babygirl-800x480.jpg); background-position:center center; background-size:contain; }
/* if you have a resizable background image you will never know how tall it is to specify padding
	there is a cool feature (bug, whatever) that allows you to specify the height as a percentage of the width and it work (it's not pixel-perfect, but it gets the job done) */
#contactinformation { padding-top:67%; background-image:url(joshuajackson-640x480.jpg); background-repeat:no-repeat; background-size:contain; }
#contactinformation .image.jj { display:none; }
.copyright { border-right:none; border-bottom:none; border-left:none; text-align:center; }

/*
==================================================
SITE LAYOUT STUFF
==================================================
*/

/* these are site design things (will probably have to over-ride some previous settings by using !important, classes, or ids) */
/* I like designs that look different on a phone in portrait/landscape, a tablet in portrait/landscape, an average resolution desktop, and a high resolution desktop (7 resolution groups makes 7 layouts) */
/* there is a division among css coders as to whether you should code the main layout for low resolution and then use media queries for higher resolutions (http://stuffandnonsense.co.uk/projects/320andup/) or code the main layout for normal desktop (1280px?) and then use media queries for lower/higher resolutions
	the concept is that coding for low first starts you with a single column of content and kind of forces you to think about the flow of content more than the layout of content
	"I do see some merit in Dr. So-And-So's position"
	the biggest problem with mobile-first coding is that internet explorer 8 doesn't support media queries
	it's not a deal if you use some javascript to enable it (https://github.com/scottjehl/Respond) or just don't care about giving a lower experience to those users */
/* remember cascading and specificity when working with your media queries */
/* there is a new trend to use em instead of px, for media queries
	at that point, you are creating the design around how the content fits within the viewport (not designing for the viewport and injecting the content)
	it does seem like a better way of doing it, plus that keeps errant devices (those that report incorrect resolutions to CSS (like my HTC 8X is 720x12800 but it CSS sees it as 320x480) from making your site difficult (http://www.alistapart.com/articles/vexing-viewports/)
	you can, generally, assume that a phone in portrait will show up as 320px wide (I have seen phones that show the correct size, though, so text can be unnecessarily small) */

/* portrait phone */
@media screen and (max-width:29.9999em) {
#navigation li { border-right:none; border-left:none; }
#navigation li:not(:first-of-type) { border-top:none; }
/* let's not make the page so long when it first loads (this is undone with javascript) */
#posts .content,
.navigation.primary { display:none; }
}

/* 16x30=480 */
@media screen and (min-width:30em) {
#navigation .primary { display:table; }
#navigation li { display:table-cell; vertical-align:middle; }
#navigation h2 { display:none; }
}

@media screen and (min-width:30em) and (max-width:89.9999em) {
#navigation .primary { width:100%; }
#navigation li { border-left:none; }
#navigation li:last-of-type { border-right:none; }
}

/* landscape phone and portrait tablet */
@media screen and (min-width:30em) and (max-width:59.9999em) {
.sitelinks { display:table; width:100%; border-spacing:1rem 0; }
.sitelink { display:table-cell; width:33%; }
}

@media screen and (min-width:30em) and (max-width:44.9999em) {
#navigation li { width:33.33333333333333%; }
#navigation .skipnav,
#navigation .home,
#navigation .misc,
#navigation .staging { display:none; }
}

@media screen and (min-width:45em) and (max-width:89.9999em) {
#navigation li { width:25%; }
#navigation .skipnav,
#navigation .home,
#navigation .staging { display:none; }
}

/* 16x60=960 */
@media screen and (min-width:60em) {
/* fade the backgrounds of posts as they get older */
/* rgb(248, 248, 248) = #f8f8f8 */
#posts .box:nth-of-type(2) { background-color:rgba(248, 248, 248, 0.9); }
#posts .box:nth-of-type(3) { background-color:rgba(248, 248, 248, 0.8); }
#posts .box:nth-of-type(4) { background-color:rgba(248, 248, 248, 0.7); }
#posts .box:nth-of-type(5) { background-color:rgba(248, 248, 248, 0.6); }
#posts .box:nth-of-type(6) { background-color:rgba(248, 248, 248, 0.5); }
#posts .box:nth-of-type(7) { background-color:rgba(248, 248, 248, 0.4); }
#posts .box:nth-of-type(8) { background-color:rgba(248, 248, 248, 0.3); }
#posts .box:nth-of-type(9) { background-color:rgba(248, 248, 248, 0.2); }
#posts .box:nth-of-type(10) { background-color:rgba(248, 248, 248, 0.1); }
/* bring the background back on mouseover */
#posts .box:hover { background-color:#f8f8f8; }
#footer h2 { display:none; }
#sitelinks a { margin:-1rem; width:calc(100% + 2rem); height:calc(100% + 2rem); background-color:rgba(255, 255, 255, 0.5); }
#sitelinks a:hover { background-color:transparent; }
}

/* landscape tablet and normal monitor */
@media screen and (min-width:60em) and (max-width:89.9999em) {
#navigation li { width:20%; }
#navigation .home,
#navigation .skipnav { display:none; }
/* give a normal length in case the browser doesn't support calc() */
#content .box,
#content.box { width:56.5%; width:calc(65% - 5rem); }
/* give a normal length in case the browser doesn't support calc() */
/* header em size + navigation em size + padding/margin rem size + top/bottom borders (renders a couple px either way in different browsers) */
#footer { position:absolute; top:8.2em; top:calc(3em + 1em + 4rem + 4px); right:0; width:35%; }
/* margin + border + site image + border + margin + border + site image + border + margin + #contactinformation border + #contactinformation margin */
#contactinformation { position:relative; top:calc(21.5625rem + 15rem); }
#sitelinks { position:absolute; top:0; right:0; width:100%; }
}

/* 16x90=1440 */
/* bigger monitor */
@media screen and (min-width:90em) {
/* padding and borders increase past a width/height
	box-sizing:border-box means the width is the total width */
#content .box,
#content.box { -moz-box-sizing:border-box; box-sizing:border-box; margin:1rem auto; width:50%; }
#navigation .primary { width:100%; }
#navigation li { width:16.66666666666667%; }
/* give a normal length in case the browser doesn't support calc() */
/* header em size + navigation em size + padding/margin rem size + top/bottom borders (renders a couple px either way in different browsers) */
#contactinformation,
#sitelinks { position:absolute; top:8.2em; top:calc(3em + 1em + 4rem + 4px); -moz-box-sizing:border-box; box-sizing:border-box; position:absolute; width:25%; }
#contactinformation { right:0; width:calc(25% - 2rem); padding-top:16%; }
#sitelinks { left:0; }
}

/* 16x120=1920 */
/* big monitor */
@media screen and (min-width:120em) {
}

/*
==================================================
PAGE SPECIFIC STUFF
==================================================
*/

/* these are things that need to be specified on a page-by-page basis */
.apps a[target="_blank"] { background:none; padding-right:0; }
.apps .renderings,
.apps .badges { text-align:center; }
.apps .renderings img,
.apps .badges img { width:100%; }
.apps .renderings .double img { width:48.25%; width:calc(50% - 3px); }

/* portrait phone */
@media screen and (max-width:29.9999em) {
}

/* 16x30=480 */
@media screen and (min-width:30em) {
.apps .renderings img,
.apps .badges img { width:49.25%; width:calc(50% - 3px); }
.apps .renderings .double img { width:24.25%; width:calc(25% - 4px); }
}

/*
==================================================
PRINT STYLES
==================================================
*/

/* printing can be a very important part of a website (although browsers don't always adhere to these rules)
	I put this last as it will have to over-ride A LOT of previous settings
	these were stolen from the html5 boilerplate (http://html5boilerplate.com/) */
@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

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

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

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

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

    img {
        max-width: 100% !important;
    }
	/* doesn't validate
    @page {
        margin: 0.5cm;
    }
	*/

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

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

/*
==================================================
EXTRA REFERENCE
==================================================
*/

/* font shorthand rules
	(font-size and font-family are the only requirements but all included options must be in this order)
	font:font-style font-variant font-weight font-size(px doesn't let text resize in IE)/line-height font-family; */

/* don't do <div id="body" style="width:1024px"> when you can do body {width:1024px;} */

/* margin:auto centers an element in its container (no need for <center>)
	it only works on block elements though so an inline element will have to change to display:block
	note that you don't have to specify all 4 margins (top right bottom left) as they will duplicate (top/bottom right/left)
	you can only specify 3 margins but it can get confusing as to what's going on so I only do 2 or 4 */

/* if you float (float:right or left) something then it's containing box might end up being shorter than the floated item (float removes the item from the flow of the page)
	a clearfix makes sure that the floated item stays within the outer item
	micro clearfix (http://nicolasgallagher.com/micro-clearfix-hack/) is less code than other clearfixes and doesn't put extra space under it (which apparently other clearfixes do but I've not noticed it)
	example - .floatedelement:after {content:""; display:table; clear:both;}*/

/* radial-gradient() is css spec but no browsers support it
	order is (optional position and angle, - center and 0 degrees default) (optional shape and size, - ellipse and farthest-corner are default) color1 (optional length or percentage), color2 (optional length or percentage)
	you can't do center top circle closest-side because the closest side is the top (a 0px circle)
	technically if the center is at top then the radius of closest corner is the same as what closest-side seems like it should be
	the colorzilla gradient maker (http://www.colorzilla.com/gradient-editor/) is an excellent resource for getting these cross-browser codes
	example - .radialgradientbackgroundedbox {background-image:radial-gradient(circle cover, #333333, #cccccc);} */

/* liner-gradient() is css spec but no browsers support it
	example - .lineargradientbackgroundedbox {background-image:linear-gradient(top, #808080, #ffffff);}
	internet explorers 9 and below don't support linear-gradient()
	you can use a microsoft filter if you want
	gradient is vertical by default (, gradientType="1" for horizontal)
	example - .lt-ie9 .lineargradientbackgroundedbox {filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#808080", endColorstr="#ffffff");}
	you can't use this and border-radius */

/* border-radius() isn't supported by internet explorer 8 so you'll need to use a microsoft behavior (kind of like a javascript file) to do it (http://code.google.com/p/curved-corner/)
	behavior uses paths from docroot (relative to the html, not the css)
	internet explorer won't allow border-radius() and a css background gradient on the same element (you'll have to choose or use nested elements)
	you could specify older internet explorers only with a selector
	example - .lt-ie9 .radiusborderedbox {behavior:url(border-radius.htc);} */

/* opacity:0-1 doesn't work in internet explorer 8
	internet explorer requires an hasLayout on an element for filter:alpha to work
	zoom:1 is in use (not sure what it does but it does it) (http://joseph.randomnetworks.com/2006/08/16/css-opacity-in-internet-explorer-ie/)
	example - .lt-ie9 .translucentbox {filter:alpha(opacity=50); zoom:1;}
	let's not forget that we can .translucentbox:hover {opacity:1;} */

/* transform: is css spec but no browsers support it
	example - .rotatedimage {transform:rotate(15deg);} */

/* an alternate (maybe preferable) way of addressing stuff that internet explorer 8 can't handle is with :not()
	example - :not(.lt-ie9) .rotatedimage {transform:rotate(15deg);} */

/* + selects an element that is directly after an element
	h3+p effects any <p> that comes directly after <h3>
	if we want to make sure that this something only applies to a .box that comes right after another .box within the same .column though
	example - .column .box+.box {} */

/* if href BEGINS with http
	example - [href^="http"] {} */

/* position:relative a container and position:absolute a containee is a good way to align something to the bottom of a box (remember vertical-align aligns two things to each other not vertical placement within a box) */

/* display:inline is more widely supported than inline-block (use inline if you don't specifically need it to function as a block element) */

/* since internet explorer 8 doesn't support rgba() we need a fallback color (http://css-tricks.com/ie-background-rgb-bug/)
	example - .colorbackgroundedbox {background:#202020; background:rgba(32,32,32,0.95);}

/* a great website for choosing color combinations (http://www.colorsontheweb.com/colorwizard.asp) */

/* z-index only works on positioned elements so you can position:relative something and it won't leave the content flow */

/* css has the ability to do custom counters (very similar to <ol> except it can be on anything - counter-reset starts a new counter
	example - dl {counter-reset:questions;}
	"Q"counter(questions): will end up being Q1:/Q2:/Q3:/etc...
	counter-increment is what makes it 2/3/4/etc...
	example - dl dt:before {content:"Q"counter(questions)": "; counter-increment:questions;} */

/* pseudo-classes don't work in IE6 Mobile or Opera 10 Mobile
	you can position it, make it block item, give it a background, etc...
	example - .somethingwithahyphenbeforeit:before {content:" - ";} */

/* vertical text
	font-size:1em will allow 2 letters on the same line for some reason
	example - .verticaltext {font-size:24px; width:1rem; letter-spacing:24px; word-wrap:break-word;} */

/* text shadows
	text-shadow:top right blur amount color;
	example - .textwithshadow {text-shadow:-2px 0 white, 0 2px white, 2px 0 white, 0 -2px white;} */

/* reflections of anything - only works in webkit browsers - gradient is optional
	example - .reflectedsomethingorother {-webkit-box-reflect:below 20px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0.33, transparent), to(rgba(255,255,255,0.25)));} *//* pseudo-classes - doesn't work in IE6 Mobile or Opera 10 Mobile */

/* :before {content:""; position:absolute; z-index:-1; top:0; left:0; width:320px; background:url() no-repeat;} */

/* img:after only works in opera */

/* rounded corners - doesn't work with IE6 Mobile or Opera 10 Mobile
	border-radius:25px;
	htc required for rounded corners in IE8 - but doesn't seem to be working, for some reason
	behavior:url(border-radius.htc); */

/* @font-face
	local() loads the local font if available, IE8 requires EOT font, don't put local with EOT format, put EOT first so IE8 will use it
	http://www.kirsle.net/wizards/ttf2eot.cgi is the ttf>eot converter that was used
	IE9 won't use copyrighted fonts - use fontsquirrel packages */

/* url() is relative to where the css file is (not the html file)
	use fqdn to reference files (images/fonts/etc...) - ../images/picture.jpg from flcbranson is loaded twice if referenced as ../images/picture.jpg from flcsarasota
	unfortunately fqdn makes warnings pop up when using https:// */

/* css calculations (http://www.w3.org/TR/css3-values/#calc)
	internet explorer 9 supports it without vendor prefixes
	opera doesn't support this (even with the vendor prefix)
	width:calc(960px - 17px); */

/* css animation
	(vendor-prefixes before w3c recommendation)
	-moz-transition:all 0.333s; -webkit-transition:all 0.333s; -o-transition:all 0.333s; -ms-transition:all 0.333s; transition:all 0.333s;*/

/* collapsing margins (http://reference.sitepoint.com/css/collapsingmargins) can be a pain in the butt
	basically because header has 0 margins and h1 has 15px margins the margins collapse and header gets 15px margins
	that doesn't work when you're just wanting to move the position of h1
	there are multiple ways of achieving this goal
	1: put transparent top border on the parent element (header)
	2: margin:0 and pad h1 to the appropriate position
	3: margin:0 and position:relative h1 to the appropriate position
	4: position:absolute h1 to the appropriate position (you may want to position:relative the parent)
	there may be times when one is more approriate than another */
