/**
 * HTML5 ✰ Boilerplate
 *
 * style.css contains a reset, font normalization and some base styles.
 *
 * Credit is left where credit is due.
 * Much inspiration was taken from these projects:
 * - yui.yahooapis.com/2.8.1/build/base/base.css
 * - camendesign.com/design/
 * - praegnanz.de/weblog/htmlcssjs-kickstart
 */


/**
 * html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
 * v1.6.1 2010-09-17 | Authors: Eric Meyer & Richard Clark
 * html5doctor.com/html-5-reset-stylesheet/
 */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, hr, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, 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;
}

blockquote, q {
quotes: none;
}

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

ins {
background-color: #ff9;
color: #000;
text-decoration: none;
}

mark {
background-color: #ff9;
color: #000;
font-style: italic;
font-weight: bold;
}

del {
text-decoration: line-through;
}

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

table {
border-collapse: collapse;
border-spacing: 0;
}

hr {
clear: both;
display: block;
height: 1px;
border: none;
border-top: 1px solid #ccc;
margin: 0px;
padding: 0px;
}

input, select {
vertical-align: middle;
}


/**
 * Font normalization inspired by YUI Library's fonts.css: developer.yahoo.com/yui/
 */

body {
font: 14px/1.231 sans-serif;
}
/* Hack retained to preserve specificity */
select, input, textarea, button {
font: 99% sans-serif;
}

/* Normalize monospace sizing:
   en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome */
pre, code, kbd, samp {
font-family: monospace, sans-serif;
}


/**
 * Minimal base styles.
 */

/* Always force a scrollbar in non-IE */
/*html {
overflow-y: scroll;
}
*/
/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {
outline: none;
}

ul, ol {
margin-left: 2em;
}
ol {
list-style-type: decimal;
}

/* Remove margins for navigation lists */
nav ul, nav li {
margin: 0;
list-style: none;
list-style-image: none;
}

small {
font-size: 85%;
}
strong, th {
font-weight: bold;
}

td {
vertical-align: top;
}

/* Set sub, sup without affecting line-height: gist.github.com/413930 */
sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}

pre {
  /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
  white-space: pre;
white-space: pre-wrap;
word-wrap: break-word;
padding: 15px;
}

textarea {
overflow: auto;
}
/* www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */

.ie6 legend, .ie7 legend {
margin-left: -7px;
}

/* Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] {
vertical-align: text-bottom;
}
input[type="checkbox"] {
vertical-align: bottom;
}
.ie7 input[type="checkbox"] {
vertical-align: baseline;
}
.ie6 input {
vertical-align: text-bottom;
}

/* Hand cursor on clickable input elements */
label, input[type="button"], input[type="submit"], input[type="image"], button {
cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
margin: 0;
}

/* Colors for form validity */
input:valid, textarea:valid {
}
input:invalid, textarea:invalid {
border-radius: 1px;
-moz-box-shadow: 0px 0px 5px red;
-webkit-box-shadow: 0px 0px 5px red;
box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid {
background-color: #f0dddd;
}


/* These selection declarations have to be separate
   No text-shadow: twitter.com/miketaylr/status/12228805301
   Also: hot pink! */
/*::-moz-selection {
background: #FF5E99;
color: #fff;
text-shadow: none;
}
::selection {
background: #FF5E99;
color: #fff;
text-shadow: none;
}
*/

/* j.mp/webkit-tap-highlight-color */
a:link {
-webkit-tap-highlight-color: #FF5E99;
}

/* Make buttons play nice in IE:
   www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {
width: auto;
overflow: visible;
}

/* Bicubic resizing for non-native sized IMG:
   code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img {
-ms-interpolation-mode: bicubic;
}

/**
 * You might tweak these..
 */

body, select, input, textarea {
  /* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
  color: #444;
  /* Set your base font here, to apply evenly */
  /* font-family: Georgia, serif;  */
}

/* Headers (h1, h2, etc) have no default font-size or margin; define those yourself */
h1, h2, h3, h4, h5, h6 {
font-weight: bold;
word-wrap: break-word;
}

a, a:active, a:visited {
color: #607890;
}
a:hover {
color: #036;
}


/**
 * Primary styles
 *
 * Author: Halle 23
 */

/* blue #1A3699 orange #F68231 */ 

.ie7 .tk-ff-din-web-condensed,
.ie8 #content h1,
.ie8 .tk-ff-din-web-condensed { line-height: 125%; margin-top: -10px; padding-top: 10px; }

.ie7 .tk-ff-din-web-condensed .title,
.ie7 .tk-ff-din-web-condensed .claim,
.ie7 #main #content h2,
.ie7 #main #content .name { margin-top: -5px; padding-top: 5px; }

.ie7 h1 { padding-top: 10px; }
.ie7 #content .detail .title { padding-top: 10px; }


/* General */
html, body {
height: 100%;
background-color: #C7C7C7;
color: #000000;
line-height: 20px;
}

a, a:link, a:visited {
color: #000000;
text-decoration: none;
}
a:active, a:focus, a:hover {
color: #1A3699;
text-decoration: none;
}
a.active {
color: #1A3699;
}
.youth a.old:hover {
  color: black;
}

.youth a:active, .youth a:focus, .youth a:hover {
color: #F68231;
}
.youth a.active {
color: #F68231
}

.nowrap { white-space: nowrap; }

h1 {
  font-size: 49px;
  line-height: 50px;
  text-transform: uppercase;
  width: 440px;
}
h1.headline {
margin-bottom: 14px;
padding-bottom: 10px;
border-bottom: 1px solid #000000;
font-size: 57px;
line-height: 54px;
}
h1.subheadline {
margin-top: 40px;
margin-bottom: 18px;
padding-bottom: 9px;
border-bottom: 1px solid #000000;
font-size: 42px;
line-height: 42px;
}
h1.date {
font-size: 76px;
line-height: 85px;
margin-top: -10px;
}
h1.date.small {
font-size: 48px;
line-height: 48px;
margin-top: 0;
}
h1.actor {
font-size: 42px;
line-height: 40px;
}
h1.first {
margin-top: 0px;
}

h2 {
width: 440px;
margin-bottom: 14px;
font-size: 32px;
line-height: 32px;
text-transform: uppercase;
}
h2.headline {
margin-top: 45px;
margin-bottom: 8px;
padding-bottom: 8px;
border-bottom: 1px solid #000000;
}

h3 {
width: 440px;
font-size: 18px;
line-height: 22px;
margin-bottom: 11px;
text-transform: uppercase;
}
h3.date {
font-size: 15px;
line-height: 20px;
}
h3+h2 {
margin-top: 30px;
}
p {
width: 440px;
margin-bottom: 20px;
}


/* Wrapper (alignment center) */
#wrapper {
width: 930px;
min-height: 100%;
height: auto !important;
height: 100%;
overflow: hidden !important;
margin: auto;
background: url('../i/bg.png') repeat-y;
}

/* Header Container (left column) */
header {
width: 170px;
float: left;
}
header a, header a:link, header a:visited {
color: #FFFFFF;
}
header a:active, header a:focus, header a:hover {
color: #97a0cd;
}
header a.active {
margin-left: -14px;
color: #97a0cd;
}
header a.logo {
height: 82px;
margin: 30px 21px 30px 21px;
display: block;
}
header a.youth:active, header a.youth:focus, header a.youth:hover {
color: #e9c19e;
}

/* Primary Navigation (inside Header Container) */
nav.primary {
  font-size: 17px;
  line-height: 17px;
  margin: 0px 28px 0px 28px;
  text-transform: uppercase;
}
nav.primary li { margin-bottom: 18px; }
nav.primary li.first { 
  border-top: solid 1px #fff;
  margin-top: 5px; 
  padding-top: 21px; 
}
nav.primary li.home {
  display: block;
  font-size: 23px;
  margin: 0px 0 0 0;
  padding: 3px 0 0 0;
}
nav.primary li.youth { 
  border-bottom: solid 1px #fff;
  border-top: solid 1px #fff;
  margin-top: -5px;
  padding: 10px 0px 6px 0px; 
}
.ie8 nav.primary li { line-height: 110%;  }

/* Secondary Navigation (inside Sidebar) */
nav.secondary {
  font-size: 17px;
  line-height: 22px;
  margin-bottom: 54px;
  text-transform: uppercase;
  word-wrap: break-word;
}

/* Tertiary Navigation (inside Sidebar) */
nav.tertiary {
  font-size: 15px;
  line-height: 24px;
  margin-bottom: 54px;
  text-transform: uppercase;
}

/* Main Container */
#main {
  float: left;
  padding: 142px 0px 0px 44px;
}

/* Content */
#content {
  float: left;
  margin-bottom: 100px;
  padding-bottom: 200px;
  width: 510px;
}
#content.splash.anim {
  height: 600px;
  position: relative;
}
#content.splash.anim img { position: absolute; visibility: hidden; }
#content.splash.anim iframe { bottom: 0px; position: absolute; }
#content hr {
width: 440px;
margin-top: 28px;
margin-bottom: 28px;
border-color: #000000;
text-align: left;
}
#content ul {
width: 420px;
margin: 20px 0px 20px 18px;
font-size: 13px;
line-height: 18px;
list-style-type: square;
/*text-transform: uppercase;*/
}
#content ul#ticketpath {
font-size: 18px;
line-height: 20px;
text-transform: uppercase;
}
#content em {
text-transform: uppercase;
}
#content.history p strong {
  display: block;
  margin-top: 20px;
  text-transform: uppercase;
}
#content .calender {
  margin-top: 19px;
  width: 440px;
}
#content .event {
  border-bottom: 1px solid #000000;
  margin-bottom: 3px;
  text-transform: uppercase;
  word-wrap: break-word;
}
#content .event .copy { text-transform: none; }
#content .event .day {
float: left;
color: #1A3699;
font-size: 42px;
line-height: 42px;
width: 51px;
}
#content .event .facts {
width: 110px;
margin: 11px 0 14px 0;
padding-right: 9px;
float: left;
font-size: 15px;
line-height: 16px;
}
#content .event .act {
width: 269px;
margin: 12px 0px;
float: left;
}
#content .event p {
width: 100%;
margin-bottom: 0px;
}
#content .event p.time {
color: #1A3699;
}
.ie8 #content .event p.title { line-height: 125%; }
#content .event p.show {
}
#content .event p.theatre.youth { color: #F68231; }
#content .event p.theatre { color: #1A3699; }
#content .event p.claim {
padding-bottom: 8px;
font-size: 15px;
line-height: 11px;
}
#content .event p.title {
font-size: 29px;
line-height: 26px;
word-wrap: break-word;
}

#content .event p.author {
font-size: 15px;
line-height: 16px;
}
#content .event p.location {
color: #1A3699;
font-size: 15px;
line-height: 17px;
margin-top: -2px;
padding-bottom: 6px;
}
#content .event .youth p.location {
color: #F68231;
}
#content .event p.copy {
font-size: 11px;
line-height: 14px;
}
#content .event.last {
  border-bottom: none;
}

#content .month { padding-bottom: 50px; }

#content .detail {
  position: relative;
  text-transform: uppercase;
  width: 440px;
}
#content .detail .author {
margin-bottom: 12px;
font-size: 23px;
line-height: 21px;
}
#content .detail .title {
  border-bottom: 1px solid #000000;
  font-size: 58px;
  line-height: 60px;
  margin-bottom: 420px;
  padding-bottom: 8px;
  word-wrap: break-word;
}

#content .detail .actor {
margin-bottom: 7px;
padding-bottom: 8px;
border-bottom: 1px solid #000000;
font-size: 57px;
line-height: 57px;
}
#content .detail .copy {
text-transform: none;
}

#content .detail .images {
  border-bottom: 1px solid #000000;
  height: 340px;
  margin-bottom: 1px;
  padding-bottom: 8px;
  overflow: hidden;
}
#content .detail .images img { width: auto; }

#content .detail #gallery { 
  margin-top: -415px;
  height: 400px;
  position: absolute;
}
#content .detail #gallery.zoom .images {
  border: none;
  height: 440px;
  width: auto;
}
#content .detail #gallery.zoom {
  border: solid 1px #000;
  background-color: #fff;
  margin-top: -421px;
  height: 400px;
  padding-bottom: 100px;
  width: 500px;
}
#content .detail #gallery.zoom .controls { width: 490px; }
#content .detail #gallery.zoom .close { display: block; }
#content .detail #gallery .close,
#content .detail #gallery.zoom .video,
#content .detail #gallery.zoom .magnifier,
#content .detail #gallery.zoom .like { display: none; }
#content .detail .controls {
  bottom: 5px;
  font-size: 11px;
  line-height: 12px;
  left: 3px;
  height: 42px;
  position: absolute;
}
#content .detail .controls .photo {
  float: left;
  padding-top: 8px;
  width: 170px;
}
#content .detail .controls .icon {
  background: url('../i/icon_play.png') no-repeat center 5px;
  cursor: pointer;
  height: 25px;
  float: right;
  width: 54px;
}
#content .detail .controls .icon.video { margin-left: 10px; width: 30px; }
#content .detail .controls .icon.magnifier { margin-right: 10px; width: 30px; }

#sidebar .secondary a.video {
background: url('../i/icon_play.png') no-repeat right 4px;
padding-right: 20px;
}

#content .detail .controls .like {
background: none;
overflow: hidden;
padding-top: 4px;
width: 85px;
/*background: url('../i/icon_like.png') no-repeat right center;*/
}
#content .detail .controls .magnifier {
background: url('../i/icon_magnifier.png') no-repeat center 5px;
}
#content .detail .controls .close {
  background: url('../i/icon_close.png') no-repeat right 3px;
  width: 25px;
}
#content .detail .controls .pager {
padding-top: 4px;
padding-right: 4px;
float: right;
font-size: 19px;
line-height: 22px;
}
#content .detail .controls .pager .arrow {
height: 15px;
padding-top: 1px;
padding-right: 5px;
display: block;
float: left;
}
#content .detail .controls .pager .arrow.next {
padding-right: 12px;
}
#content .detail .controls a {
cursor: pointer;
}
#content .detail .actors {
margin-bottom: 10px;
font-size: 18px;
line-height: 22px;
}
#content .detail .parts {
margin-top: 16px;
margin-bottom: 10px;
font-size: 18px;
line-height: 24px;
}
#content .detail p.copy {
text-transform: none;
}
#content .detail h2.headline {
margin-top: 28px;
margin-bottom: 7px; /*23*/
}

#content .detail .lightbox {
  background: #FFFFFF;
  border: 1px solid #000000;
  position: absolute;
  top: 249px;
  width: 500px;
}
#content .detail .lightbox .images {
width: 500px;
height: auto;
margin-bottom: 0px;
padding-bottom: 0px;
border-bottom: none;
overflow: hidden;
}
#content .detail .lightbox .images img {
}
#content .detail .lightbox .controls {
height: 30px;
margin-bottom: 8px;
font-size: 11px;
line-height: 12px;
}
#content .detail .lightbox .controls .photo {
width: 340px;
padding-top: 6px;
padding-left: 8px;
}
#content .detail .lightbox .controls .icon {
width: 27px;
margin-right: 6px;
}

#content .cast h1 {
margin-bottom: 20px;
}
#content .cast h2 {
margin-bottom: 18px;
font-size: 42px;
line-height: 42px;
}
#content .cast h3 {
font-size: 17px;
line-height: 20px;
}
#content .cast p {
margin-bottom: 18px;
}

#content .list {
width: 440px;
padding-top: 14px;
padding-bottom: 15px;
border-top: 1px solid #000000;
text-transform: uppercase;
}
#content .list .name {
width: 355px;
float: left;
font-size: 17px;
line-height: 17px;
}
#content .list .pdflink {
float: right;
font-size: 11px;
line-height: 14px;
}
#content .list.first {
  border-top: none;
  margin-top: 15px;
  padding-top: 0px;
}
#content .images {
  border-bottom: 1px solid #000000;
  margin-bottom: 10px;
  overflow: hidden;
  padding-bottom: 8px;
  width: 440px;
}

#content .download {
width: 440px;
padding-top: 14px;
padding-bottom: 23px;
border-top: 1px solid #000000;
text-transform: uppercase;
}
#content .download .name {
width: 100px;
margin-right: 4px;
float: left;
font-size: 17px;
line-height: 17px;
word-wrap: break-word;
}
#content .download .file {
width: 103px;
margin-left: 9px;
margin-bottom: 9px;
float: left;
text-transform: none;
font-size: 11px;
line-height: 14px;
}
#content .download .file img {
width: 103px;
}
#content .download .file p {
width: 100%;
margin-top: 6px;
margin-bottom: 0px;
}
#content .download.first {
margin-top: 14px;
padding-top: 0px;
border-top: none;
}

#content input {
background-color: white;
color: #000000;
display: block;
font-size: 13px;
line-height: 18px;
padding-left: 4px;
width: 430px;
}
#content input.input-submit {
background-color: white;
border: 0;
font-size: 18px;
padding: 0;
margin: 10px 0;
text-align: left;
text-transform: uppercase;
width: auto;
}
#content #ticketpath {
  display: block;
  width: 471px;
  height: 20px;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  margin: 10px 0 40px 0;
}
#content #ticketpath li {
  display: block;
  float: left;
  width: 150px;
  height: 18px;
  padding: 0;
  color: lightgrey;
}
#content #ticketpath li.passed {
  color: #000;
}
#content .din { text-transform: uppercase; }
#content ul.dates.din { 
  font-size: 17px; 
  list-style: none;
  margin: 0;
  padding: 0;
}
#content a.tickets {
  cursor: pointer;
  float: left;
}
#content #count {
  margin-bottom: 20px;
}
#content #comment {
  margin-top: 5px;
}
#content textarea {
width: 434px;
height: 120px;
margin-top: 16px;
padding-top: 4px;
padding-left: 4px;
border: 1px solid #CCCCCC;
color: #000000;
font-size: 12px;
line-height: 16px;
}
#content label {
margin: 10px 0 0 0;
display: block;
font-size: 13px;
line-height: 20px;
text-transform: none;
}
#content .submit {
padding: 10px 0;
border: none;
background: transparent;
font-size: 18px;
text-align: left;
text-transform: uppercase;
}
#content .radioset {
  margin-top: 16px;
}
#content .radioset input {
  clear: left;
  float: left;
  margin-top: 4px;
  margin-right: 6px;
  width: auto;
}
#content .radioset label {
line-height: 20px;
margin: 0;
vertical-align: text-top;
}
#content .error {
color: #FF0000;
}
#content form fieldset.guestbook {
  margin: 30px 0;
}
#content form fieldset .last-name {
  display: none;
}
/* Sidebar */
#sidebar {
  float: left;
  font-size: 13px;
  line-height: 20px;
  margin-top: 2px;
  margin-left: 16px;
  text-transform: uppercase;
  width: 154px;
}
#sidebar h1 {
  border-bottom: 1px solid #000000;
  font-size: 23px;
  line-height: 20px;
  margin-bottom: 6px;
  padding-bottom: 4px;
  width: 160px;
}
.ie8 #sidebar h1 { line-height: 120%; }
#sidebar h2 {
  border-bottom: 1px solid #000000;
  font-size: 14px;
  line-height: 16px;
  margin-bottom: 6px;
  padding-bottom: 4px;
  width: 100%;
}
#sidebar h3 {
  font-size: 18px;
  line-height: 20px;
  margin-bottom: 0px;
  padding-bottom: 1px;
  width: 100%;
}
#sidebar p {
width: 100%;
}
#sidebar ul.events {
  font-size: 17px;
  list-style: none;
  margin: 0;
  padding: 0;
}
#sidebar a.date {
color: #1A3699;
}
#sidebar a.date.youth {
color: #F68231;
}
#sidebar .box {
margin-bottom: 54px;
}
#sidebar hr {
  border-color: #000;
  margin: 0 0 4px 0;
  padding: 0 0 0 0;
}
#sidebar input {
width: 150px;
height: 22px;
margin-top: 10px;
padding-left: 4px;
border: 1px solid #CCCCCC;
color: #000000;
font-size: 12px;
line-height: 22px;
}
#sidebar label {
margin-bottom: 4px;
display: block;
font-size: 13px;
line-height: 20px;
text-transform: none;
}
#sidebar a img {
max-width: 140px;
margin-bottom: 10px;
}


/* Footer (inside Main Container) */
footer {
  border-top: 1px solid #000000;
  clear: both;
  padding: 4px 0px;
  width: 500px;
}

footer #impressum {
  color: #fff;
  display: block;
  float: left;
  font-size: 10px;
  margin-left: -185px;
  width: 185px;
}
footer.home{
  border: none;  
} 
footer #sponsors {
  border-bottom: 1px solid black;  
} 

footer #sponsors h2 {
} 

footer #sponsors img {
  margin: 0 10px 20px 0;
  width: 150px;
  
} 

/* STYLES JUNGES THEATER */

#wrapper.youth {
background: url('../i/bg_youth.png') repeat-y;
}
#wrapper.youth a:active,
#wrapper.youth a:focus,
#wrapper.youth a:hover {
color: #F68231;
text-decoration: none;
}
#wrapper.youth nav.primary li a.active {
margin-left: -14px;
color: #f5ab7a;
}

#wrapper.youth nav.primary li a:active,
#wrapper.youth nav.primary li a:focus,
#wrapper.youth nav.primary li a:hover {
color: #f5ab7a;
}
#wrapper.youth nav.primary li a.old:hover {
color: #1A3699;
}

#wrapper.youth #content .event .day {
color: #000000;
}
#wrapper.youth #content .event p.time {
color: #000000;
}


/**
 * Non-semantic helper classes: please define your styles before this section.
 */

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

/* Hide for both screenreaders and browsers:
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden {
display: none;
visibility: hidden;
}

/* Hide only visually, but have it available for screenreaders: by Jon Neal.
  www.webaim.org/techniques/css/invisiblecontent/  &  j.mp/visuallyhidden */
.visuallyhidden {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: drupal.org/node/897638 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto;
}

/* Hide visually and from screenreaders, but maintain layout */
.invisible {
visibility: hidden;
}

/* The Magnificent Clearfix: Updated to prevent margin-collapsing on child elements.
   j.mp/bestclearfix */
.clearfix:before, .clearfix:after {
content: "\0020";
display: block;
height: 0;
overflow: hidden;
}
.clearfix:after {
clear: both;
}
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix {
zoom: 1;
}



/**
 * Media queries for responsive design.
 *
 * These follow after primary styles so they will successfully override.
 */

@media all and (orientation:portrait) {
  /* Style adjustments for portrait mode goes here */
}

@media all and (orientation:landscape) {
  /* Style adjustments for landscape mode goes here */
}

/* Grade-A Mobile Browsers (Opera Mobile, Mobile Safari, Android Chrome)
   consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {


  /* Uncomment if you don't want iOS and WinMobile to mobile-optimize the text for you: j.mp/textsizeadjust */
  /* html {
-webkit-text-size-adjust: none;
-ms-text-size-adjust: none;
}
*/
}


/**
 * Print styles.
 *
 * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
 */
@media print {
  * {
background: transparent !important;
color: black !important;
text-shadow: none !important;
filter: none !important;
-ms-filter: none !important;
}
/* Black prints faster: sanbeiji.com/archives/953 */
  a, a:visited {
color: #444 !important;
text-decoration: underline;
}
  a[href]:after {
content: " (" attr(href) ")";
}
  abbr[title]:after {
content: " (" attr(title) ")";
}
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
content: "";
}
/* Don't show links for images, or javascript/internal links */
  pre, blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
  thead {
display: table-header-group;
}
/* css-discuss.incutio.com/wiki/Printing_Tables */
  tr, img {
page-break-inside: avoid;
}
/*  @page {
margin: 0.5cm;
}
*/  p, h2, h3 {
orphans: 3;
widows: 3;
}
  h2, h3 {
page-break-after: avoid;
}

}

