/* 
 * HTML5 ✰ Boilerplate
 *
 * What follows is the result of much research on cross-browser styling. 
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 *
 * Detailed information about this CSS: h5bp.com/css
 * 
 * ==|== normalize ==========================================================
 */


/* =============================================================================
   HTML5 display definitions
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

/* =============================================================================
   Base
   ========================================================================== */

/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 * 2. Force vertical scrollbar in non-IE
 * 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
 */

html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

body { margin: 0; font-size: 14px; line-height: 1.44;  }

body, button, input, select, textarea { font-family: Arial, Helvetica, sans-serif; color: #544e46; }

/* 
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate
 * Also: hot pink! (or customize the background color to match your design)
 */

::-moz-selection { background: #0A246A; color: #fff; text-shadow: none; }
::selection { background: #0A246A; color: #fff; text-shadow: none; }


/* =============================================================================
   Links
   ========================================================================== */

a { color: #036564; }
a:visited { color: #036564; }
a:hover { color: #036564; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #fff; margin: 1em 0; padding: 0; }

/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover, a:active, a:focus { outline: 0; }


/* =============================================================================
   Typography
   ========================================================================== */

abbr[title] { border-bottom: 1px dotted; }

address { font-style:normal; }

b, strong { font-weight: bold; }

blockquote { margin: 1em 40px; }

dfn { font-style: italic; }

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

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

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

/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }

/* Improve readability of pre-formatted text in all browsers */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

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

small { font-size: 85%; }

/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }


/* =============================================================================
   Lists
   ========================================================================== */

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }


/* =============================================================================
   Embedded content
   ========================================================================== */

/*
 * 1. Improve image quality when scaled in IE7: h5bp.com/d
 * 2. Remove the gap between images and borders on image containers: h5bp.com/e 
 */

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

/*
 * Correct overflow not hidden in IE9 
 */

svg:not(:root) { overflow: hidden; }


/* =============================================================================
   Figures
   ========================================================================== */

figure { margin: 0; }


/* =============================================================================
   Forms
   ========================================================================== */

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }

/* 
 * 1. Correct color not inheriting in IE6/7/8/9 
 * 2. Correct alignment displayed oddly in IE6/7 
 */

legend { border: 0; *margin-left: -7px; padding: 0; }

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */

button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 * 2. Correct inner spacing displayed oddly in IE6/7
 */

button, input { line-height: normal; *overflow: visible; }

/*
 * Reintroduce inner spacing in 'table' to avoid overlap and whitespace issues in IE6/7
 */

table button, table input { *overflow: auto; }

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 */

button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }

/*
 * Consistent box sizing and appearance
 */

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/* 
 * Remove inner padding and border in FF3/4: h5bp.com/l 
 */

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/* 
 * 1. Remove default vertical scrollbar in IE6/7/8/9 
 * 2. Allow only vertical resizing
 */

textarea { overflow: auto; vertical-align: top; resize: vertical; }

/* Colors for form validity */
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }


/* =============================================================================
   Forms - fancy sauce
   ========================================================================== */

form, fieldset {
	margin-bottom: 10px;
}
form span.required {
	color:#FF0000;
}
input[type="text"], input[type="password"], input[type="email"], textarea, select {
	border: 1px solid #ccc;
	padding: 4px;
	outline: none;
	border-radius: 2px;
	color: #777;
	margin: 0;
	width: 300px;
	max-width: 100%;
	display: block;
	margin-bottom: 10px;
	background: #fff;
}
input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, textarea:focus {
	border: 1px solid #aaa;
	color: #444;
	box-shadow:  0 0 3px rgba(0, 0, 0, .2);
}
textarea {
	min-height: 60px;
}
textarea.full-width { 
	width: 100%;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
select {
	width: 220px;
}
input[type="checkbox"] {
	display: inline;
}
label, legend {
	display: block;
	font-weight: bold;
	font-size: 13px;
	margin:0 0 5px 0;
	width:100% !important;
}
label span, legend span {
	font-weight: normal;
	font-size: 13px;
	color: #444;
}
/* #Error
================================================== */
.formerror {
	background-color: #FFCCCC;
	border: 1px solid red;
	margin-bottom: 5px;
	padding: 5px;
	width: auto;
}
/* #Buttons
================================================== */

button, input[type="submit"], input[type="reset"], input[type="button"] {
	background-color: #ffffff;
	background-image: linear-gradient(#ffffff, #cccccc);
	border: 1px solid #aaa;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 4px 12px;
	border-radius: 3px;
	color: #444;
	display: inline-block;
	font-size: 11px;
	font-weight: bold;
	text-decoration: none;
	text-shadow: 0 1px rgba(255, 255, 255, .75);
	cursor: pointer;
	margin-bottom: 20px;
	line-height: 21px;
}
button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover {
	color: #222;
	background-color: #fcfcfc;
	background-image: linear-gradient(#fcfcfc, #b2b2b2);
	border: 1px solid #888;
	border-top: 1px solid #aaa;
	border-left: 1px solid #aaa;
}
button:active, input[type="submit"]:active, input[type="reset"]:active, input[type="button"]:active {
	background-color: #b5b5b5;
	background-image: linear-gradient(#b5b5b5, #fefefe);
	border: 1px solid #888;
	border-bottom: 1px solid #aaa;
	border-right: 1px solid #aaa;
}
button.full-width, input[type="submit"].full-width, input[type="reset"].full-width, input[type="button"].full-width {
	width: 100%;
	padding-left: 0 !important;
	padding-right: 0 !important;
	text-align: center;
}
button.primary, input[type="submit"].primary, input[type="reset"].primary, input[type="button"].primary {
	padding: 8px 24px;
	font-size: 16px;
}


/* =============================================================================
   Tables
   ========================================================================== */

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

table.zebra-stripe tr:nth-child(2n+1) td {
  background-color: #f1f1f1;
}

td {
	vertical-align: top;
}


/* ==|== primary styles =====================================================
   Author: Bryan Miller
   ========================================================================== */

body {
	min-width:980px;
	background: url(../images/site-design/footer-repeat.jpg) repeat;
}

.site-width {
	width:980px;
	margin:0 auto;
	position:relative;
}

#site-background { min-width:980px; }
#home #site-background { background: #fff url(../images/site-design/site-bg-home.jpg) repeat-x; }
#interior #site-background { background: #fff url(../images/site-design/site-bg-interior.jpg) repeat-x; }


/* = Header
-----------------------------------------------------------------------------*/
header {
	height:119px;
	background: url(../images/site-design/header.jpg) no-repeat;
	position:relative;
}

#appointments-phone {
	position:absolute;
	top:28px;
	right:6px;
	font-weight:normal;
	font-family:'DroidSerif', Georgia, "Times New Roman", Times, serif;
	text-align:center;
}

#appointments-phone .text:before {
	height:23px;
	width:23px;
	display:block;
	float:left;
	position:absolute;
	left:10px;
	top:0px;
	content:"";
	background: url(../images/site-design/appointments-phone.jpg) no-repeat;
}

#appointments-phone .text {
	color:#e8ddcb;
	font-size:20px;
	position:relative;	
	letter-spacing:-0.035em;
}

#appointments-phone .tel {
	color:#fff;
	font-size:34px;
	letter-spacing:-0.035em;
}


/* = Logo
-----------------------------------------------------------------------------*/

h1#logo { 
	display:block; 
	margin:0; 
	padding:0; 
}
h1#logo a { 
	overflow:hidden;
	display:block;
	outline:none;
	margin:0;
	width:400px;
	height:119px;
	background:transparent url(../images/site-design/logo.jpg) no-repeat 0 0;
	text-indent:-9009px;
}


/* = Navigation
-----------------------------------------------------------------------------*/
nav { height:82px; }

ul#nav_main,
ul#nav_main li {
	display:block;
	float:left;
}

ul#nav_main, 
ul#nav_main li {
	background:url(../images/site-design/nav-main-divider.jpg) no-repeat;
}

ul#nav_main { background-position:left 0; }
ul#nav_main li { background-position:right 0; }

ul#nav_main li a {
	overflow:hidden;
	display:block;
	outline:none;
	margin:0;
	width:0;
	height:82px;
	color:#fff;
	text-decoration:none;
	text-align:center;
	font:normal 19px/82px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
	text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.75);
}

/* Main navigation list item widths */
ul#nav_main li a.home { width:86px; }
ul#nav_main li a.about-us { width:115px; }
ul#nav_main li a.our-office { width:125px; }
ul#nav_main li a.services-procedures { width:232px; }
ul#nav_main li a.about-da-vinci { width:163px; }
ul#nav_main li a.conditions { width:130px; }
ul#nav_main li a.contact-us { width:127px; }

/* Main navigation hover states  */
body.home ul#nav_main li a.home, ul#nav_main li a.home:hover,
body.about-us ul#nav_main li a.about-us, ul#nav_main li a.about-us:hover,
body.our-office ul#nav_main li a.our-office, ul#nav_main li a.our-office:hover,
body.services-procedures ul#nav_main li a.services-procedures, ul#nav_main li a.services-procedures:hover,
body.about-da-vinci ul#nav_main li a.about-da-vinci, ul#nav_main li a.about-da-vinci:hover,
body.conditions ul#nav_main li a.conditions, ul#nav_main li a.conditions:hover,
body.contact-us ul#nav_main li a.contact-us, ul#nav_main li a.contact-us:hover { color:#dbc6a4; }


/* = Homepage Styles
-----------------------------------------------------------------------------*/

#home #callouts {
	float:left;
	width:357px;
}

#home #callout-2 {
	margin-top:-1px;
}

#home #banner {
	float:left;
	width:623px;
}

#home #main {
	margin-top:6px;
}

#home #main h1,
#home #main h2,
#home #main h3,
#home #main h4,
#home #main h5,
#home #main h6 {
	margin:0;
	font-weight:normal;
	font-family:'DroidSerif', Georgia, "Times New Roman", Times, serif;
}

#home #main h1 { 
	font-size:37px; 
	color:#036564; 
}
#home #main h2 { font-size:26px; }
#home #main h3 { font-size:22px; }
#home #main h4 { font-size:28px; }
#home #main h5 { font-size:16px; }
#home #main h6 { font-size:14px; }

#home #main p {
	margin:0 0 0.8em 0;
}

#home #content-main {
	float:left;
	overflow:hidden;
	margin-left:-1px;
	padding:30px 10px 20px 40px;
	width:572px;
	border-left: 1px solid #d6cfc4; /* same color as #home #content-main  */
}

#home #featured {
	padding:10px 0 0 0;
}

#home #content-sub {
	float:left;
	overflow:hidden;
	padding:0 0 20px 10px;
	width:346px;
	border-right: 1px solid #d6cfc4; /* same color as #home #content-main  */
}

#home #content-sub a,
#home #content-sub a:visited {
	text-decoration:none;
}
#home #content-sub a:hover {
	text-decoration:underline;
}

#home #quick-links {
	padding:33px 30px 20px 0;
	border-bottom: 1px solid #d6cfc4;
}

#home #quick-links p {
	margin:0.2em 0;
}

#home #whats-new {
	padding:10px 30px 15px 0;
}


/* = Interior page styles
-----------------------------------------------------------------------------*/

#interior #content-main {
	float:left;
	overflow:hidden;
	width:592px;
	margin-left:-1px;
	padding:0 0 30px 30px;
	border-left:1px solid #d6cfc4;
}

#interior #content-main .editable img {
	border:1px solid #e6e1da;
}
#interior #content-main .editable img.no-style {
	border:none;
}

#website-section-title {
	color:#033649;
	font:normal 30px/80px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
	letter-spacing:-0.005em;
	padding-bottom:30px;
}

#interior #content-main h1,
#interior #content-main h2,
#interior #content-main h3,
#interior #content-main h4,
#interior #content-main h5,
#interior #content-main h6 {
	margin:0;
	font-weight:normal;
	font-family:'DroidSerif', Georgia, "Times New Roman", Times, serif;
	letter-spacing:0.005em;
}

#interior #content-main h1 { 
	font-size:28px; 
	color:#036564; 
}
#interior #content-main h2 { font-size:24px; color:#544e46; }
#interior #content-main h3 { 
	font-size:20px; 
	color:#031634;
}
#interior #content-main h4 { font-size:16px; }
#interior #content-main h5 { font-size:14px; }
#interior #content-main h6 { font-size:14px; }

#interior #content-main p,
#interior #content-main li,
#interior #content-main table {
	margin:0.6em 0;
	letter-spacing:0.025em;
}

#addthis { padding-top:20px; }

#interior #content-sub {
	float:left;
	overflow:hidden;
	width:356px;
	padding:227px 0 20px 0;
	background: url(../images/banners/banner-interior.jpg) no-repeat;
	border-right:1px solid #e6e1da;
}

#in-this-section .title {
	color:#036564;
	font:normal 28px/28px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
	margin:30px 0 5px 0;
	letter-spacing:-0.015em;
}

#in-this-section ul {
	list-style:none outside none;
	margin:0;
	padding:0;
}

#in-this-section li a:before {
	content: "» ";
	color: #036564;
}

#in-this-section li a,
#in-this-section li a:visited,
#in-this-section li a:hover {
	color:#544e46;
	display:block;
	padding:3px 0 3px 8px;
	font:normal 14px/20px Arial, Helvetica, sans-serif;
	text-decoration:none;
	letter-spacing:-0.015em;
}
#in-this-section li a:hover {
	background-color:#036564;
	color:#fff;
}

#in-this-section li li a,
#in-this-section li li a:visited,
#in-this-section li li a:hover {
	padding-left:21px;
}

#in-this-section li li li a,
#in-this-section li li li a:visited,
#in-this-section li li li a:hover {
	padding-left:34px;
}

#interior a.callout {
	margin-top:40px;
}


/* = Callouts - Small
-----------------------------------------------------------------------------*/
#home #callout-1 { background: url(../images/callouts/callout-1.jpg) no-repeat; }
#interior #callout-1 { background: url(../images/callouts/callout-1-interior.jpg) no-repeat; }
#callout-2 { background: url(../images/callouts/callout-2.jpg) no-repeat; }

a.callout,
a.callout:visited,
a.callout:hover {
	display:block;
	overflow:hidden;
	cursor:pointer;
	width:195px;
	height:122px;
	margin:0;
	padding:30px 5px 0 157px;
	text-decoration:none;
	color:#544e46;
}

a.callout .title {
	margin:6px 0;
	font:bold 21px/21px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
	letter-spacing:0.015em;
	color:#036564;
}

a.callout .text,
a.callout .link {
	margin:6px 0;
	font-size:13px;
	line-height:18px;
	letter-spacing:0.025em;
}

a.callout .link {
	color:#036564;
}
a.callout:hover .link {
	text-decoration:underline;
}


/* = Callouts - Large
-----------------------------------------------------------------------------*/
#callout-3 { background: url(../images/callouts/callout-3.jpg) no-repeat; }

a.callout-large,
a.callout-large:visited,
a.callout-large:hover {
	display:block;
	overflow:hidden;
	cursor:pointer;
	width:423px;
	height:81px;
	margin:0;
	padding:22px 0 0 152px;
	text-decoration:none;
	color:#f4efdb;
}

a.callout-large .title {
	font:normal 24px/26px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
	letter-spacing:0.005em;
	color:#fff;
}

a.callout-large .text,
a.callout-large .link {
	margin:2px 0;
	font-size:13px;
	line-height:18px;
	letter-spacing:0.025em;
}

a.callout-large .link {
	color:#fff;
}
a.callout-large:hover .link {
	text-decoration:underline;
}


/* = Footer
-----------------------------------------------------------------------------*/
footer {
	background: url(../images/site-design/footer.jpg) repeat-x;
	font-size:12px;
	line-height:1.6;
	letter-spacing:0.025em;
	padding:25px 0;
	color:#fff;
}

footer a,
footer a:visited {
	text-decoration:none;
	color:#fff;
}
footer a:hover {
	text-decoration:underline;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6 {
	color:#d1bfae;
	margin:10px 0;
	font: normal 19px/19px 'DroidSerif', Georgia, "Times New Roman", Times, serif;
}

footer ul {
	list-style:none outside none;
	margin:0;
	padding:0;
}

footer .col-first {
	float:left;
	width:340px;
	padding-left:10px;
}

footer .col-second {
	float:left;
	width:340px;
}

footer .col-third {
	float:right;
	width:290px;
}



/* =============================================================================
   Practis Driving Directions Widget
   ========================================================================== */
#driving_directions {
	width:200px;
	padding:0 8px;
	background-color: #f9f9f9;
	border:1px solid #dddddd;
	border-radius: 5px;
	background-clip: padding-box;
}

#driving_directions h1,
#driving_directions h2,
#driving_directions h3,
#driving_directions h4,
#driving_directions h5,
#driving_directions h6 {
	margin:0;
	padding:10px 0;
	text-align:center; 
}
#driving_directions p { margin:0; }

#driving_directions form { margin:0; }
#driving_directions input[type="text"] { width: 190px; }
#driving_directions select { width: 220px; }

/* =Health Library
-----------------------------------------------------------------------------*/
#health_library { 
	margin:0; 
	padding:0; 
	overflow:auto;
}

#health_library .col {
	float:left;
	display:inline;
	overflow:hidden;
	width:49%;
	min-width:250px;
	margin:0;
	padding:0;
}

#health_library .item {
	padding:10px;
	margin:0 10px 10px 0;
	border:3px double #dfdfdf;
}

#health_library .item h3 { 
	margin:0.2em 0; 
}

#health_library .item p { 
	line-height:18px; 
	margin:0.2em 0;
}

#health_library .item a,
#health_library .item a:visited,
#health_library .item a:hover { 
	text-decoration:underline; 
}

#health_library .item img { 
	float:right; 
	display:inline; 
	margin:0 0 10px 10px; 
	padding:0; 
}

#health_library .item ul {
	list-style:none outside none;
	margin:0;
	padding:0;
}

/* =============================================================================
   Fonts
   Generated by Font Squirrel (http://www.fontsquirrel.com) on April 4, 2012 02:41:36 PM America/New_York
   ========================================================================== */

@font-face {
    font-family: 'DroidSerif';
    src: url('../fonts/DroidSerif-Regular-webfont.eot');
    src: url('../fonts/DroidSerif-Regular-webfont.eot#iefix') format('embedded-opentype'),
         url('../fonts/DroidSerif-Regular-webfont.woff') format('woff'),
         url('../fonts/DroidSerif-Regular-webfont.ttf') format('truetype'),
         url('../fonts/DroidSerif-Regular-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'DroidSerif';
    src: url('../fonts/DroidSerif-Italic-webfont.eot');
    src: url('../fonts/DroidSerif-Italic-webfont.eot#iefix') format('embedded-opentype'),
         url('../fonts/DroidSerif-Italic-webfont.woff') format('woff'),
         url('../fonts/DroidSerif-Italic-webfont.ttf') format('truetype'),
         url('../fonts/DroidSerif-Italic-webfont.svg') format('svg');
    font-weight: normal;
    font-style: italic;

}

@font-face {
    font-family: 'DroidSerif';
    src: url('../fonts/DroidSerif-Bold-webfont.eot');
    src: url('../fonts/DroidSerif-Bold-webfont.eot#iefix') format('embedded-opentype'),
         url('../fonts/DroidSerif-Bold-webfont.woff') format('woff'),
         url('../fonts/DroidSerif-Bold-webfont.ttf') format('truetype'),
         url('../fonts/DroidSerif-Bold-webfont.svg') format('svg');
    font-weight: bold;
    font-style: normal;

}

@font-face {
    font-family: 'DroidSerif';
    src: url('../fonts/DroidSerif-BoldItalic-webfont.eot');
    src: url('../fonts/DroidSerif-BoldItalic-webfont.eot#iefix') format('embedded-opentype'),
         url('../fonts/DroidSerif-BoldItalic-webfont.woff') format('woff'),
         url('../fonts/DroidSerif-BoldItalic-webfont.ttf') format('truetype'),
         url('../fonts/DroidSerif-BoldItalic-webfont.svg') format('svg');
    font-weight: bold;
    font-style: italic;

}


/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */

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

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.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: h5bp.com/p */
.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; }

/* Contain floats: h5bp.com/q */ 
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* ==|== print styles =======================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { 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; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
  header, nav, footer { display:none; }
}