/*
 * Reset and utility styles for HTML5/responsive websites
 *
 * This is a blend of:
 * - reset.css v2.0 from http://meyerweb.com/eric/tools/css/reset/
 * - normalize.css v2.1.2 from https://github.com/necolas/normalize.css
 * - styles from HTML5 Boilterplate
 * - styles from WordPress 2012 theme
 * - my own legacy reset and utility styles
 *
 * Everything from the above style sheets is not included. In particular, many styles
 * from normalize.css are omitted.
 *
 * The styles below accommodate IE8, but not older IE or most other older browsers.
 *
 * rjw 7/2013
 *
 */


/*** Border Box Model ***/

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


/*** Basic Reset ***/

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;  /* HTML5 display-role reset for older browsers */
}
audio, canvas, video {
  display: inline-block;  /* HTML5 display-role reset for older browsers */
}

/* reset border, margin, padding, and font on all elements */
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;
}
/* line height 100% (inherited by all descendants) */
body {
  line-height: 1;
}
/* lists */
ol, ul {
  list-style: none;
}
/* images */
img {
  max-width: 100%;
  text-decoration: none;   /* no underlines on images */
  -ms-interpolation-mode: bicubic;
  /* forces automatic scaling even if width and height attributes set */
  width: auto;
  height: auto;
}
/* bold and italic */
b, strong {
  font-weight: bold;
}
i, em {
  font-style: italic;
}
/* blockquotes and quotes */
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
/* fieldsets */
fieldset {
  display: inline;
}
legend {
  display: inline;
}
/* forms */
form {
  display: inline;
}
/* tables */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td, th {
  text-align: left;
  vertical-align: top;
}
/* 'hidden' attribute for older browsers */
[hidden] {
  display: none;
}


/* Miscellaneous Adjustments */

/* Size nested elements */
li li, li p, th p, td p {
  font-size: 100%;  /* prevent text size in nested elements from growing/shrinking */
}
/* generic responsive CSS for HTML5 video tags */
video {
  width: 100%    !important;
  height: auto   !important;
}
/* Don't display `audio` without controls */
audio:not([controls]) {
  display: none;
  height: 0;
}
/* Improve readability of pre-formatted text */
pre {
  white-space: pre-wrap;
}
/* Prevent `sub` and `sup` affecting `line-height` */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* Webkit font smoothing (maxvoltar.com/archive/-webkit-font-smoothing) */
html {
  -webkit-font-smoothing: antialiased;
}
/* Prevents iOS text size adjust after orientation change */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}


/*** Clearing Floats ***/

/* div or other to clear previous floating things */
.clear, .divclear {
  clear: both;
}
/* clear self *//* http://css-tricks.com/snippets/css/clear-fix/ */
.clearself:before,
.clearself:after {
    content: "";
    display: table;
}
.clearself:after {
    clear: both;
}
/* clear self with overflow - usable when overflow:hidden is okay */
#my_element_that_needs_to_clearself {
  /* COPY FOLLOWING LINE INTO ELEMENT STYLE */
  overflow: hidden; /* clear self */
}
/* clear block */
/* insert div with this class at end of div that needs to clear self */
/* this is fallback when methods above don't work for some reason, or when making code to be edited in old Dreamweaver */
.tinyclear {
  clear: both;
  font-size: 0;
  height: 0;
}


/*** Utility Classes ***/

/* floating things */
.floatleft {
  float: left;
}
.floatright {
  float: right;
}
/* center */
.center {
  text-align: center;
}
/* don't allow to wrap */
.nowrap {
  white-space: nowrap;
}
/* elements for screen display or print display only */
.screenonly {
  display: block;
}
.printonly {
  display: none;
}
span.screenonly {
  display: inline;
}
span.printonly {
  display: none;
}
/* image replacement */
/* set width, height, display:block, and background image on element with .ir class */
/* see https://github.com/h5bp/html5-boilerplate/commit/adecc5da035d6d76b77e3fa95c6abde841073da2 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
}
.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; /* might need increase */
}
/* content that should never be seen by visual browsers */
.offscreen, .visuallyhidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}
/* make the above focusable, i.e. when navigated to via keyboard */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
  overflow: visible;
}
/* completely hidden */
.hidden {
  display: none !important;
  visibility: hidden;
}
/* layout table */
table.layouttable {
  border: none;
  border-spacing: 0;
  margin: 0;
  padding: 0;
}
table.layouttable td {
  padding: 0;
}



/* Print styles */

@media print {
  /* elements for screen display or print display only */
  .screenonly {
    display: none;
  }
  .printonly {
    display: block;
  }
  span.screenonly {
    display: none;
  }
  span.printonly {
    display: inline;
  }
  /* other semi-hidden stuff */
  .offscreen, .visuallyhidden, .hidden {
    display: none !important;
  }
  /* printing hints */
  pre, blockquote, tr, img {
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  img {
    max-width: 100% !important;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3, h4, h5, h6 {
    page-break-after: avoid;
  }
}
