/* HTML 5 */
article, aside, dialog, figure, footer, header, hgroup, nav, section { 
	display: block;
}

/* sticky footer courtesy of http://ryanfait.com/ */
html, body {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
  font-family: Georgia, serif;
}

a {
  font-family: Helvetica, sans-serif;
  font-weight: bold;
  text-decoration: none;
  color: #43912a;
}

#content a:hover,
#content a:active,
#content a:focus {
/*  color: #61bc46;*/
  text-decoration: underline;
}

h1 {
  /* 24/36 */
  font-size: 2.4em;
  line-height: 1.5em;
  margin-bottom: 0.75em;
  color: #61bc46;
}

h2 {
  /* 18/24 + 12 margin */
  font-size: 1.8em;
  line-height: 1.333em;
  margin: 0.667em 0 0;
}

p, li, address {
  /* 11/18 */
  font-size: 1.1em;
  line-height: 1.636em;
  margin-bottom: 0;
}

li p,
address p {
  font-size: 1em;
}

/* something about Helvetica throws us off the grid */
li a {
  line-height: 1em;
}

p {
  margin-bottom: 1.636em;
}

table {
  border-collapse: collapse;
}

mark {
  font-weight: bold;
}

blockquote {
  margin: 0.9em 0 0;
  text-align: center;
}

blockquote p {
  /* 16/36 */
  font-size: 1.6em;
  line-height: 2.25em;
  margin-bottom: 0;
  padding-top: 1.125em;
  color: #999;
}

blockquote p:first-child {
  background: url(/images/quote.png) center top no-repeat;
}

blockquote p.cite {
  /* 11/18 */
  font-size: 1.1em;
  line-height: 1.636em;
  margin-top: 0.818em;
  padding-top: 0;
}

blockquote p.cite cite {
  text-transform: uppercase;
  font-style: normal;
}

.screenreader {
  position: absolute;
  top: -1000em;
}

.box {
  margin: 0.9em 0;
  padding: 0 15px;
  background-color: transparent;
}

.see-more p {
  text-align: right;
  margin-bottom: 0;
}

.see-more p a:after {
  content: " \00bb";
}

p.emphatic {
  font-size: 2.4em;
  line-height: 1.5em;
  margin-bottom: 0.75em;
  color: #61bc46;
}

/* provides that gray rule that goes inside all the big green text */
h1.ruled span,
p.emphatic span {
  padding: 3px 0;
  border-bottom: 1px #e2e2e2 solid;
}

img.float-left {
  display: block;
  float: left;
  margin: 0 15px 0 0;
}

.flash {
  padding: 0.9em 15px;
  margin-bottom: 1.8em;
  background-color: #e0ffcc;
}

.flash p {
  margin-bottom: 0;
  text-align: center;
  color: #61bc46;
  font-style: italic;
}

.replaced {
  position: relative;
  text-indent: -1000em;
}

.replaced span {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: top left;
  background-repeat: no-repeat;
}

#branding {
  font-family: Helvetica, sans-serif;
  background-color: #e2e2e2;
}

#branding .container {
  position: relative;
  height: 120px;
  border-top: 1.8em #61bc46 solid;
  z-index: 200;
}

#branding #account-bar {
  position: absolute;
  right: 5px;
  top: -1.8em;
}

#branding #account-bar p {
  font-weight: bold;
  margin-bottom: 0;
}

#branding #account-bar p,
#branding #account-bar a {
  color: #fff;
}

#branding #account-bar a {
  text-decoration: none;
}

#branding #account-bar a:hover {
  text-decoration: underline;
}

/* these spans just provide some breathing room around the links */
#branding #account-bar span {
  padding: 0 1em;
  visibility: hidden;
}

#logo {
  position: absolute;
  left: 0;
  top: 18px;
  margin: 0;
}

#logo span {
  width: 195px;
  height: 85px;
  background: url(/images/fl-logo.png);
}

#quote-button {
  position: absolute;
  right: 0;
  bottom: 32px;
  height: 50px;
  text-align: right;
  color: #888888;
  text-transform: uppercase;
  font-style: italic;
  padding-right: 54px;
  padding-top: 18px;
  background: url(/images/upload.gif) no-repeat top right;
  font-size: 1.2em;
}

#quote-button:hover {
  text-decoration: underline;
}

/*** All sorts of nav hackery ***/

#site-nav {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 100;
}

#site-nav ul {
  list-style-type: none;
  margin: 0;
}

#site-menu li {
  position: relative;
  float: left;
}

#site-menu li a {
  display: block;
  width: 103px;
  height: 32px;
  line-height: 14px;
  text-decoration: none;
}

#site-menu li a .title {
  position: absolute;
  display: block;
  left: 0;
  padding: 3px 5px;
  width: 93px;
  height: 26px;
  text-align: center;
  font-size: 11px;
}

#site-menu li a .title {
  bottom: 0;
  color: #fff;
  text-transform: uppercase;
}

/*
#jsddm {	
	margin: 0;
	padding: 0
}
	
#jsddm li {	
	float: left;
	list-style: none;
	font: 12px Tahoma, Arial
}

#jsddm li a {	
	display: block;
	background: #20548E;
	padding: 5px 12px;
	text-decoration: none;
	border-right: 1px solid white;
	width: 70px;
	color: #EAFFED;
	white-space: nowrap
}

#jsddm li a:hover {	
	background: #1A4473
}
*/
		
#site-menu li ul {
	margin: 0;
	position: absolute;
	visibility: hidden;
	border-top: 1px solid white;
	
	/* Drop Shadow (doesn't work in IE6) */
	background:	url('/images/shadow.png') no-repeat bottom right;
	padding: 0 10px 11px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}

#site-menu li ul li {
	float: none;
	display: inline;
}
		
#site-menu li ul li a {
	width: 170px;
	height: 20px;
	white-space: nowrap;
	color: #fff;
	padding-top: 10px;
	padding-left: 10px;
	text-transform: uppercase;
	font-size: 10px;
}
		
#site-menu li ul li a:hover {
	background-color: #d8e7f7;
}

#site-menu li.why-fineline ul li a:hover {
	background-color: #edffe6;
}

/* one-liners */
#site-nav .services a .title,
#site-nav .why-fineline a .title,
#site-nav .contact a .title,
#site-nav .cportal a .title {
  height: 12px;
  padding-top: 17px;
}

#site-nav ul li a .mdash {
  display: none;
}

#site-nav ul li .hover-bar {
  width: 103px;
  height: 2px;
  border-bottom: 2px solid #e2e2e2;
  visibility: hidden;
}

/* normal state */
#site-nav .intro a, #site-nav .intro .hover-bar               { background-color: #62a0de; }  /* bfcf48 */
#site-nav .services a, #site-nav .services .hover-bar         { background-color: #0084bd; }  /* 9ead2b */
#site-nav .applications a, #site-nav .applications .hover-bar { background-color: #005591; }  /* 778c23 */
#site-nav .resources a, #site-nav .resources .hover-bar  	  { background-color: #003d7a; }  /* 55731d */
#site-nav .why-fineline a, #site-nav .why-fineline .hover-bar { background-color: #61bc46; }  /* 00458a */
#site-nav .contact a, #site-nav .contact .hover-bar           { background-color: #43912a; }  /* 007dab */
#site-nav .cportal a, #site-nav .cportal .hover-bar           { background-color: #357221; }

/* hovery dog ears */
/*
#site-nav .intro a:hover .title         { background-image: url(/images/hover-intro.png); }
#site-nav .services a:hover .title      { background-image: url(/images/hover-serv.png); }
#site-nav .applications a:hover .title  { background-image: url(/images/hover-apps.png); }
#site-nav .resources a:hover .title     { background-image: url(/images/hover-news.png); }
#site-nav .why-fineline a:hover .title  { background-image: url(/images/hover-why.png); }
#site-nav .contact a:hover .title       { background-image: url(/images/hover-con.png); }
#site-nav .cportal a:hover .title         { background-image: url(/images/hover-quote.png); }
*/

/* current page (background) */
body.intro #site-nav .intro a .title,
body.services #site-nav .services a .title,
body.applications #site-nav .applications a .title,
body.resources #site-nav .resources a .title,
body.why-fineline #site-nav .why-fineline a .title,
body.contact #site-nav .contact a .title,
body.cportal #site-nav .cportal a .title {
  background-color: #fff;
}

/* current page (foreground) */
body.intro #site-nav .intro a .title, #site-menu .intro ul li a:hover               { color: #62a0de; }
body.services #site-nav .services a .title, #site-menu .services ul li a:hover         { color: #0084bd; }
body.applications #site-nav .applications a .title, #site-menu .applications ul li a:hover { color: #005591; }
body.resources #site-nav .resources a .title, #site-menu .resources ul li a:hover       { color: #003d7a; }
body.why-fineline #site-nav .why-fineline a .title, #site-menu .why-fineline ul li a:hover { color: #61bc46; }
body.contact #site-nav .contact a .title, #site-menu .contact ul li a:hover           { color: #43912a; }
body.cportal #site-nav .cportal a .title, #site-menu .cportal ul li a:hover           { color: #357221; }
body.cportal #site-nav .quote a .title, #site-menu .quote ul li a:hover             { color: #f7931e; }

#content {
  margin-top: 3.6em;
  padding-bottom: 3.6em;
  z-index: 1;
}

/* sticky footer by http://ryanfait.com/ */
/* the bottom margin is the negative value of the footer's height */
.sticky-footer-wrapper {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -6.3em;
}

/* .push must be the same height as footer */
footer, .push {
  height: 6.3em;
}

footer {
  background-color: #6e6e6e;
}

footer .container {
  position: relative;
  padding-top: 1.8em;
  /* border-bottom: 1.8em #61bc46 solid; */
}

footer a {
  color: #61bc46;
  text-decoration: none;
}

footer a:hover,
footer a:active,
footer a:focus {
  color: #fff;
  text-decoration: underline;
}

footer address p,
footer #links,
footer #copyright {
  font-family: Helvetica, sans-serif;
  color: #fff;
}

footer address p {
  margin-bottom: 0.1em;
}

footer address {
  font-style: normal;
}

footer address span {
  padding: 0 0.25em;
}

footer #links {
  float: right;
  margin-bottom: 0.1em;
}

footer #copyright {
  margin-bottom: 0em;
  margin-top: .65em;
  text-align: center;
  height: 1.8em;
  background-color: #61bc46;
}

/*** Other shared styles ***/


#content form.ruled input,
#content form.ruled select {
  vertical-align: middle;
}

#content form.ruled fieldset {
  margin: 0;
  padding: 0 0 3px 0;
  border: 0;
  background: url(/images/contact-rule.png) left top repeat;
}

#content form.ruled p {
  /* 16/30 */
  font-size: 1.6em;
  line-height: 1.875em;
  padding-top: 0.375em;
  margin-bottom: 0;
}

#content form.ruled p.submit {
  text-align: right;
  margin: 0.25em 0 0;
  padding: 0;
}

#content form.ruled label {
  float: left;
  clear: left;
  width: 85px;
  margin-top: 2px;  /* vertical alignment */
  margin-right: 5px;
  font-weight: normal;
  text-align: right;
  color: #6e6e6e;
}

#content form.ruled input[type=text],
#content form.ruled input[type=email],
#content form.ruled input[type=password],
#content form.ruled textarea {
  /* 12/12 + padding */
  font-size: 0.75em;
  line-height: 1em;
  font-family: Helvetica, sans-serif;
  border: 0;
  margin: 0;
  padding: 0.25em;
  background-color: #fff;
}

#content form.ruled textarea {
  /* 12/18 */
  line-height: 1.5em;
}

/* these containers have a vertical rule separating them from
 * the adjacent container
 */
#content .intro-container {
  width: 225px;
  margin-right: 0;
}

#content .intro-container section {
  padding-right: 15px;
}

#content .intro-container ul {
  list-style-type: none;
  margin: 5.4em 0 0 0;
}

#content .intro-container ul li {
  margin-bottom: 1.636em;
}

#content .intro-container ul li a {
  padding: 3px;
  margin: -3px;
  text-transform: uppercase;
}

#content .intro-container ul li.current {
  background-position: left center;
  background-repeat: repeat-x;
}

#content .intro-container ul li.current a {
  color: #fff !important;
}

/* shared subnav hover background color */
body.intro #content .intro-container ul li a:hover,
body.services #content .intro-container ul li a:hover,
body.applications #content .intro-container ul li a:hover,
body.resources #content .intro-container ul li a:hover {
  background-color: #d8e7f7;
}

body.why-fineline #content .intro-container ul li a:hover,
body.cportal #content .intro-container ul li a:hover,
body.help #content .intro-container ul li a:hover {
  background-color: #edffe6;
}

#content .subsections-container {
  width: 705px;
  padding-left: 15px;   /* gutter width */
  margin-right: 0;
  background-position: left top;
  background-repeat: repeat-y;
  min-height: 350px;    /* so the rules (likely) connect */
}

body.basic-comparator form p.submit {
  margin: 1.636em 0;
  text-align: right;
}

body.basic-comparator table.basic-comparator {
  margin-bottom: 0;
}

body.basic-comparator table.basic-comparator p,
body.basic-comparator table.basic-comparator ul {
  margin-bottom: 0;
}

body.basic-comparator table.basic-comparator thead th {
  /* "baseline shift" */
  padding: 2px 5px 0;
  font-family: Helvetica, sans-serif;
  font-weight: normal;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  background-color: #61bc46;
}

body.basic-comparator table.basic-comparator tbody th,
body.basic-comparator table.basic-comparator tbody td {
  vertical-align: top;
  padding: 0.9em 15px;
}

body.basic-comparator table.basic-comparator tbody th {
  color: #fff;
}

body.basic-comparator table.basic-comparator tbody td.description h1 {
  /* 14/18 */
  color: #222222;
  font-weight: bold;
  font-size: 1.272em;
  line-height: 1.0em;
  display: block;
  margin-bottom: 0.25em;
}

body.basic-comparator table.basic-comparator tbody td.description h2 {
color: #222222;
display:block;
font-size:1.1em;
font-style: italic;
margin-top: 0;
margin-bottom: 0.75em;
}

body.basic-comparator table.basic-comparator tbody td.features {
  padding-right: 0;
}

body.basic-comparator table.basic-comparator tbody td.features ul {
  margin-left: 0;
}

body.basic-comparator table.basic-comparator tbody td.compare {
  padding: 20px 0;
  text-align: center;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.reference th.technology,
body.basic-tech-comparator #basic-tech-comparator tbody tr.sls th.technology,
body.detailed-tech-comparator #detailed-tech-comparator th.odd,
body.basic-materials-comparator table.basic-comparator tbody tr.polypropylene th.production-material,
body.basic-materials-comparator table.basic-comparator tbody tr.aluminum th.production-material,
body.detailed-materials-comparator #detailed-materials-comparator th.material.even {
  background-color: #003d7a;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.reference.odd td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.sls.odd td,
body.detailed-tech-comparator #detailed-tech-comparator td.odd,
body.basic-materials-comparator table.basic-comparator tbody tr.polypropylene.odd td,
body.basic-materials-comparator table.basic-comparator tbody tr.aluminum.odd td,
body.detailed-materials-comparator #detailed-materials-comparator td.even {
  background-color: #a6bbd1;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.reference.even td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.sls.even td,
body.basic-materials-comparator table.basic-comparator tbody tr.polypropylene.even td,
body.basic-materials-comparator table.basic-comparator tbody tr.aluminum.even td {
  background-color: #8ca8c3;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.stereolithography th.technology,
body.basic-tech-comparator #basic-tech-comparator tbody tr.fdm th.technology,
body.detailed-tech-comparator #detailed-tech-comparator th.even,
body.basic-materials-comparator table.basic-comparator tbody tr.abs th.production-material,
body.detailed-materials-comparator #detailed-materials-comparator th.material.odd {
  background-color: #0084bd;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.stereolithography.odd td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.fdm.odd td,
body.basic-materials-comparator table.basic-comparator tbody tr.abs.odd td,
body.detailed-materials-comparator #detailed-materials-comparator td.odd {
  background-color: #bfe0ee;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.stereolithography.even td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.fdm.even td,
body.detailed-tech-comparator #detailed-tech-comparator td.even,
body.basic-materials-comparator table.basic-comparator tbody tr.abs.even td {
  background-color: #a6d4e8;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.threedp th.technology,
body.basic-tech-comparator #basic-tech-comparator tbody tr.perfactory th.technology,
body.basic-materials-comparator table.basic-comparator tbody tr.polycarbonate th.production-material {
  background-color: #0063a1;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.threedp.odd td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.perfactory.odd td,
body.basic-materials-comparator table.basic-comparator tbody tr.polycarbonate.odd td {
  background-color: #b2d0e3;
}

body.basic-tech-comparator #basic-tech-comparator tbody tr.threedp.even td,
body.basic-tech-comparator #basic-tech-comparator tbody tr.perfactory.even td,
body.basic-materials-comparator table.basic-comparator tbody tr.polycarbonate.even td {
  background-color: #99c1d9;
}

/* these labels are added via JS to give a bigger click target */
body.basic-comparator table.basic-comparator tbody td.compare input[type=checkbox],
body.basic-comparator table.basic-comparator tbody td.compare label {
  cursor: pointer;
}

table.equipment-comparator {
  margin-top: 1.8em;
}

table.equipment-comparator thead th {
  padding: 0.818em 5px;
  font-family: Helvetica, sans-serif;
  text-transform: uppercase;
  text-align: center;
  color: #9ead2b;
  background-color: transparent;
  border-top: 1px #9ead2b solid;
  border-bottom: 1px #9ead2b solid;
}

table.equipment-comparator tbody td {
  padding: 0.818em 5px;
  text-align: center;
  vertical-align: top;
  border-bottom: 1px #9ead2b solid;
}

table.equipment-comparator tbody tr:last-child td {
  border-bottom: 0;
}

table.equipment-comparator tbody td ul {
  list-style-type: none;
}

table.equipment-comparator tbody td p {
  margin-bottom: 0;
}

/* used in the JS zoomable thing */
.clip {
  position: relative;
  overflow: hidden;
}

.clip img.ui-draggable {
  cursor: move;
}

.clip img.ui-draggable-disabled {
  cursor: default;
}

.clip .zoomer {
  position: absolute;
  z-index: 20;
  right: 3px;
  top: 3px;
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.clip .zoomer img {
  max-width: 100%;
}



/*** Home ***/

body.home #content a.intro        { color: #62a0de; }
body.home #content a.services     { color: #0084bd; }
body.home #content a.applications { color: #005591; }
body.home #content a.resources    { color: #003d7a; }
body.home #content a.why-fineline { color: #61bc46; }
body.home #content a.contact      { color: #43912a; }
body.home #content a.quote        { color: #f7931e; }

body.home .jcarousel-item {
  height: auto;
}

body.home .jcarousel-item img {
  width: 625px;
}

/* center the pager */
body.home .jcarousel-pager-container {
  position: relative;
  left: 50%;
  float: left;
}

body.home .jcarousel-pager-container ul {
  position: relative;
  left: -50%;
  list-style-type: none;
  margin: 0;
}

body.home .jcarousel-pager-container li {
  display: block;
  float: left;
  margin-right: 5px;
}

body.home .jcarousel-pager-container a {
  display: block;
}

body.home .jcarousel-pager-container img {
  display: block;
  padding-bottom: 3px;
  width: 60px;
}

body.home .jcarousel-pager-container a:hover {
  background-color: transparent;
  margin: 0;
  padding: 0;
}

body.home .jcarousel-pager-container a.selected img {
  border-bottom: 1px #61bc46 solid;
}

body.home #bottom-container {
  margin-top: 1.8em;
}

body.home section.column {
  border-top-width: 1.8em;
  border-top-style: solid;
}

body.home section.column h1 {
  margin-top: 0.375em;
  padding-top: 0.375em;
  margin-bottom: 0;
}

body.home #news {
  border-top-color: #003d7a;
}

body.home #news h1,
body.home #news h2 {
  color: #003d7a;
}

body.home #news h1 {
  border-top: 1px #003d7a solid;
}

body.home #news ul {
  list-style-type: none;
  margin: 0;
}

body.home #news ul li {
  /* 11/18 */
  font-size: 1.1em;
  line-height: 1.636em;
  margin: 0 0 1.5em;
}

body.home #learn-more {
  border-top-color: #0084bd;
}

body.home #learn-more h1 {
  color: #0084bd;
  border-top: 1px #0084bd solid;
}

body.home #get-a-quote {
  border-top-color: #f7931e;
}

body.home #get-a-quote h1 {
  color: #f7931e;
  border-top: 1px #f7931e solid;
}


/*** Intro to Prototyping/Technology Comparator ***/


body.intro #content .intro-container ul li a {
  color: #62a0de;
}

body.intro #content .intro-container ul li.current a {
  background-color: #62a0de;
}

body.intro .intro-container ul li.current,
body.intro .subsections-container {
  background-image: url(/images/rule-intro.png);
}

body.intro .subsections-container section {
  margin-bottom: 3.6em;
}

body.intro .subsections-container section h1 {
  color: #62a0de;
  margin-bottom: 0;
}

/* Landing Page */

body.intro.technologies .subsections-container h1 {
  /* 18/24 */
  font-size: 1.8em;
  line-height: 1.333em;
  margin-top: 0.667em;
}

body.intro.technologies .subsections-container .technologies {
  padding-top: 1.7em;
  border-top: 1px #62a0de solid;
}

body.intro.technologies .subsections-container .technologies section h1 {
  /* 24/36 */
  font-size: 2.4em;
  line-height: 1.5em;
  margin: 0;
}

body.intro.technologies .subsections-container .technologies section img {
  width: 145px;
}

body.intro.technologies .subsections-container section.sls,
body.intro.technologies .subsections-container section.proprietary {
  margin-right: 0;
}

body.intro.technologies .subsections-container .list-container {
  padding: 0.9em 15px;
  text-align: center;
}

body.intro.technologies .subsections-container .list-container h2 {
  /* 14/18 */
  font-size: 1.4em;
  line-height: 1.286em;
  text-align: center;
  font-style: italic;
}

body.intro.technologies .subsections-container .list-container h2,
body.intro.technologies .subsections-container .list-container p {
  margin-bottom: 0;
  color: #62a0de;
}

/* Basic Technology Comparator */

body.basic-tech-comparator table#basic-tech-comparator tbody td.features {
  width: 100px;
}

body.basic-tech-comparator table#basic-tech-comparator tbody tr.fineline td.sample {
  padding-bottom: 30px;
  background-image: url(/images/built-by.png);
  background-position: center 65px;
  background-repeat: no-repeat;
}

body.basic-tech-comparator table#basic-tech-comparator tbody td.sample {
  width: 90px;
  text-align: center;
}

body.basic-tech-comparator table#basic-tech-comparator tbody td.sample img {
  max-height: 54px;
}

/* Detailed Technology Comparator */

body.detailed-tech-comparator #detailed-tech-comparator th,
body.detailed-tech-comparator #detailed-tech-comparator td {
  padding: 0;
  border-right: 15px #fff solid;
}

body.detailed-tech-comparator #detailed-tech-comparator th:last-child,
body.detailed-tech-comparator #detailed-tech-comparator td:last-child {
  border-right: 0;
}

body.detailed-tech-comparator #detailed-tech-comparator th {
  /* "baseline shift" */
  padding-top: 1px;
  width: 225px;
  font-family: Helvetica, sans-serif;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}

body.detailed-tech-comparator #detailed-tech-comparator td {
  padding: 1.8em 15px;
  vertical-align: top;
}

body.detailed-tech-comparator #detailed-tech-comparator td figure {
  position: relative;
}

body.detailed-tech-comparator #detailed-tech-comparator td figure .legend {
  position: absolute;
  z-index: 25;
  left: 3px;
  top: 0;
  font-family: Helvetica, sans-serif;
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
}

body.detailed-tech-comparator #detailed-tech-comparator td figure .caption {
  margin: 0.409em 0 0;
}

body.detailed-tech-comparator #detailed-tech-comparator td figure img.sample {
  display: block;
  width: 195px;
}


/*** Our Services/Our Equipment/Materials Comparator/Our Finishes ***/


body.services #content .intro-container ul li a {
  color: #0084bd;
}

body.services #content .intro-container ul li.current a {
  background-color: #0084bd;
}

body.services .intro-container ul li.current,
body.services .subsections-container {
  background-image: url(/images/rule-services.png);
}

body.services .subsections-container h1,
body.services .subsections-container h2 {
  color: #0084bd;
}

body.services .subsections-container h1 {
  margin-bottom: 0;
}

body.services #content table a,
body.services #content table a:hover {
  color: #003d7a;
}

/* Our Equipment */

body.equipment .subsections-container h1 {
  /* 18/24 */
  font-size: 1.8em;
  line-height: 1.333em;
  margin-top: 0.666em;
}

body.equipment .subsections-container .equipment {
  padding-top: 1.7em;
  border-top: 1px #0084bd solid;
}

body.equipment .subsections-container .equipment section h1 {
  /* 24/36 */
  font-size: 2.4em;
  line-height: 1.5em;
  margin: 0;
}

body.equipment .subsections-container section.ipro,
body.equipment .subsections-container section.invisionhr {
  margin-right: 0;
}

body.equipment #equipment-comparator caption {
  /* 16/18 */
  font-size: 1.6em;
  line-height: 1.125em;
  margin-bottom: 0.5265em;
  color: #0084bd;
  background-color: transparent;
}

body.equipment #equipment-comparator thead th,
body.equipment #equipment-comparator tbody td {
  border-color: #0084bd;
}

body.equipment #equipment-comparator thead th {
  color: #0084bd;
}

body.equipment #equipment-comparator thead th.resolution  { min-width: 120px; }
body.equipment #equipment-comparator thead th.size        { min-width: 80px; }
body.equipment #equipment-comparator thead th.lead-time   { min-width: 80px; }
body.equipment #equipment-comparator thead th.cost        { min-width: 80px; }

body.equipment #equipment-comparator tbody td.machine {
  font-weight: bold;
}

/* Basic Materials Comparator */

body.basic-materials-comparator table.basic-comparator {
  margin-bottom: 2em;
}

body.basic-materials-comparator table.basic-comparator tbody th {
  color: #fff;
}

body.basic-materials-comparator table.basic-comparator tbody th.production-material {
  width: 10em;
}

body.basic-materials-comparator table.basic-comparator tbody td.features {
  width: 10em;
}

body.basic-materials-comparator table.basic-comparator tbody td.sample {
  width: 90px;
}

body.basic-materials-comparator table.basic-comparator tbody td.sample img {
  max-height: 80px;
}

body.basic-materials-comparator table.basic-comparator tbody td.compare {
  width: 50px;
}

body.basic-materials-comparator table.basic-comparator caption {
background-color:transparent;
color:#0084BD;
font-size:1.6em;
line-height:1.125em;
margin-bottom:0.25em;
}

/* Detailed Materials Comparator */

body.detailed-materials-comparator #detailed-materials-comparator th,
body.detailed-materials-comparator #detailed-materials-comparator td {
  vertical-align: top;
}

body.detailed-materials-comparator #detailed-materials-comparator th p,
body.detailed-materials-comparator #detailed-materials-comparator td p {
  margin-bottom: 0;
/*  font-family: Helvetica, sans-serif;*/
}

body.detailed-materials-comparator #detailed-materials-comparator th.subheading {
  padding: 0.9em 5px;
  text-align: left;
  font-weight: normal;
  background-color: #61bc46 !important;
  font-family: Helvetica, sans-serif;
}

body.detailed-materials-comparator #detailed-materials-comparator th.separator {
  padding-bottom: 0;
}

body.detailed-materials-comparator #detailed-materials-comparator th.material {
  /* "baseline shift" */
  padding-top: 3px;
  padding-bottom: 0;
  font-family: Helvetica, sans-serif;
  width: 149px;
}

body.detailed-materials-comparator #detailed-materials-comparator th {
  padding: 0 5px;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}

body.detailed-materials-comparator #detailed-materials-comparator th a {
  text-transform: none;
  font-weight: normal;
}

body.detailed-materials-comparator #detailed-materials-comparator .separator {
  padding: 0 5px;
}

body.detailed-materials-comparator #detailed-materials-comparator th.separator {
  color: #b1d89b;
  border-bottom: 1px #b1d89b solid;
}

body.detailed-materials-comparator #detailed-materials-comparator th.separator p {
  /* 18/18 */
  font-size: 1.8em;
  line-height: 1em;
  margin: 1.8em 0 0.2em;
  font-family: Georgia, serif;
  font-weight: normal;
  text-transform: none;
}

body.detailed-materials-comparator #detailed-materials-comparator th.separator.general p {
  margin-top: 0;
}

body.detailed-materials-comparator #detailed-materials-comparator td {
  padding: 0.9em 5px;
  text-align: center;
  vertical-align: top;
}

body.detailed-materials-comparator #detailed-materials-comparator td.equipment {
  font-weight: bold;
}

body.detailed-materials-comparator #detailed-materials-comparator th.has-production-materials,
body.detailed-materials-comparator #detailed-materials-comparator td.has-production-materials {
  padding-bottom: 0;
  vertical-align: bottom;
}

body.detailed-materials-comparator #detailed-materials-comparator th.production-materials {
  padding-top: 0;
  padding-bottom: 0.9em !important;
  vertical-align: top;
}

body.detailed-materials-comparator #detailed-materials-comparator td.production-material {
  padding-top: 0;
  color: #007dab;
}

body.detailed-materials-comparator #detailed-materials-comparator th.heat-deflection .test {
  display: none;
}

body.detailed-materials-comparator #detailed-materials-comparator td.first.heat-deflection {
  vertical-align: bottom;
}

body.detailed-materials-comparator #detailed-materials-comparator th.first.heat-deflection .test {
  display: block;
}

body.detailed-materials-comparator #detailed-materials-comparator th.heat-deflection .pressure {
  display: block;
  margin-left: 15px;
}

/* Our Standard Finishes */

body.finishes .finishes-container {
  margin: 0 auto;
}

body.finishes .finishes-container h1 {
  /* 16/18 */
  font-size: 1.6em;
  line-height: 1.125em;
  margin-bottom: 0.5625em;
  text-align: center;
}

body.finishes .finishes-container h2 {
  font-family: Helvetica, sans-serif;
  font-size: 1.1em;
  line-height: 1.636em;
  margin-bottom: 0;
  text-transform: uppercase;
  font-weight: bold;
}

body.finishes .finishes-container img {
  display: block;
}

body.standard-finishes #standard-finishes .stereolithography {
  width: 480px;
}

body.standard-finishes #standard-finishes .other {
  width: 320px;
}

body.standard-finishes #standard-finishes img.finish-sample {
  width: 145px;
}

/* Our Custom Finishes */

body.custom-finishes .giant-sample-part-container {
  text-align: right;
}


/*** Special Applications ***/
body.applications #content .subsections-container {
  min-height: 450px;
}

body.applications #content .intro-container ul li a {
  color: #005591;
}

body.applications #content .intro-container ul li.current a {
  background-color: #005591;
}

body.applications .intro-container ul li.current,
body.applications .subsections-container {
  background-image: url(/images/rule-apps.png);
}

body.applications .subsections-container h1,
body.applications .subsections-container h2,
body.applications .subsections-container h3 {
  color: #005591;
}

body.applications .subsections-container h1 {
  margin-bottom: 0;
}

body.applications .subsections-container h2 {
  /* 14/18 */
  font-family: Helvetica, sans-serif;
  font-size: 1.4em;
  line-height: 1.286em;
  margin: 0 0 1.286em;
}

body.applications .subsections-container h3 {
  /* 12/18 */
  font-family: Helvetica, sans-serif;
  font-size: 1.2em;
  line-height: 1.5em;
  margin-bottom: 0;
}

body.applications .subsections-container .callout {
  margin-top: 7.2em;
  background-color: #6699BD;
}

body.applications .subsections-container .callout h3,
body.applications .subsections-container .callout li {
  color: #fff;
  text-align: center;
}

body.applications .subsections-container .callout h3 {
  /* 12/18 */
  font-family: Georgia, serif;
  font-size: 1.2em;
  line-height: 1.5em;
  margin: 1.5em 0;
  font-style: italic;
  color: #fff;
}

body.applications .subsections-container .callout ul {
  list-style-type: none;
}

body.applications .subsections-container .callout ul li {
  margin-bottom: 1.636em;
  font-weight: bold;
}


/*** Resources ***/


body.resources #content .intro-container ul li a {
  color: #003d7a;
}

body.resources #content .intro-container ul li.current a {
  background-color: #003d7a;
}

body.resources .intro-container ul li.current,
body.resources .subsections-container {
  background-image: url(/images/rule-resources.png);
}

body.resources .subsections-container h1,
body.resources .subsections-container h2 {
  margin-bottom: 0;
  color: #003d7a;
}

body.articles .subsections-container .headings-container {
  width: 225px;
}

body.articles .subsections-container .headings-container h1 {
  /* 11/18 */
  font-size: 1.1em;
  line-height: 1.636em;
  font-family: Helvetica, sans-serif;
  color: #6e6e6e;
}

body.articles .subsections-container .headings-container ul {
  list-style-type: none;
  margin: 0;
}

body.articles .subsections-container .headings-container ul li {
  margin: 0 0 1.636em;
}

/* same Helvetica bug as noted near line 50 */
body.articles .subsections-container .headings-container ul li * {
  line-height: 1em;
}

body.articles #content .subsections-container .headings-container ul li a {
  text-transform: uppercase;
  padding: 3px 0;     /* prevents "flickering" on multi-line links */
}

body.articles #content .subsections-container .headings-container ul li.current a {
  color: #003d7a;
}

body.articles #content .subsections-container .headings-container ul li a:hover span,
body.articles #content .subsections-container .headings-container ul li a:active span,
body.articles #content .subsections-container .headings-container ul li a:focus span {
  color: #43912a;
}

body.articles #content .subsections-container .headings-container ul li.current a:hover span,
body.articles #content .subsections-container .headings-container ul li.current a:active span,
body.articles #content .subsections-container .headings-container ul li.current a:focus span {
  color: #003d7a;
}

body.articles .subsections-container .articles-container {
  position: relative;
  width: 465px;
  min-height: 350px;
  background: url(/images/rule-resources.png) left top repeat-y;
}

body.articles .subsections-container .articles-container article {
  margin-left: 15px;
  margin-bottom: 3.6em;
}

body.articles .subsections-container .articles-container article p.date {
  float: left;
  margin: 0;
}

body.articles .subsections-container .articles-container article p.date time {
  color: #6e6e6e;
  font-style: italic;
}

/*
body.machines #machine-data thead th {
  color: #003d7a;
}

body.machines #machine-data thead th,
body.machines #machine-data tbody td {
  padding-left: 15px;
  padding-right: 15px;
  border-color: #003d7a;
}

body.machines #machine-data tbody td.machine {
  font-weight: bold;
}

body.machines #machine-data tbody td ul {
  margin: 0;
}

body.machines #machine-data tbody td ul li {
  margin-bottom: 1.636em;
}

body.machines #machine-data tbody td ul li:last-child {
  margin-bottom: 0;
}

body.machines #machine-data tbody td ul li em {
  display: block;
}
*/


/*** Why FineLine ***/


body.why-fineline #content .intro-container ul li a {
  color: #61bc46;
}

body.why-fineline #content .intro-container ul li.current a {
  background-color: #61bc46;
}

body.why-fineline .intro-container ul li.current,
body.why-fineline .subsections-container {
  background-image: url(/images/rule-why.png);
}

body.why-fineline .subsections-container section h1,
body.why-fineline .subsections-container section h2 {
  color: #61bc46;
}

/* The FineLine Difference */

body.the-difference .subsections-container section h1 {
  margin: 0;
}

body.the-difference .subsections-container section img {
  display: block;
  margin-bottom: 2px;   /* gets us back on the grid */
}

/* Our People */

body.people .execs {
  padding-bottom: 1.8em;
  margin-bottom: 3.6em;
  background: url(/images/rule-why.png) left bottom repeat-x;
}

body.people .execs section h1 {
  float: left;
  margin: 0 10px 0 0;
}

body.people .execs section h2,
body.people .underlings section h1 {
  /* 12/18 */
  font-size: 1.2em;
  line-height: 1.5em;
  font-family: Helvetica, sans-serif;
  font-weight: bold;
  text-transform: uppercase;
}

body.people .execs section h2 {
  line-height: 1em;
  padding-top: 1.4em;   /* try to align it with the baseline of the h1 */
}

body.people .execs section img {
  clear: left;
  width: 105px;
}

body.people .underlings section h1 {
  margin-bottom: 0;
}

body.people .underlings section img {
  display: block;
  width: 100%;
  margin: 0.9em 0;
}


/*** Contact ***/


body.contact #address-container h1,
body.contact #address-container p strong {
  color: #43912a;
}

body.contact #address-container h1 {
  font-size: 2.4em;
  line-height: 1.5em;
  margin-bottom: 0;
}

body.contact #address-container p strong {
  display: block;
  font-size: 2.4em;
  font-weight: normal;
  line-height: 1.5em;
  margin-top: 0.5em;
}

body.contact #address-container p span {
  display: none;
}

body.contact #map {
  width: 100%;
  height: 240px;
  margin-bottom: 0.9em;
}

body.contact #info {
  /* 12/18 */
  font-family: Helvetica, sans-serif;
  font-size: 1.2em;
  line-height: 1.5em;
}

body.contact #info:first-line {
  font-weight: bold;
}

body.contact #form-container {
  border-top: 1.8em #43912a solid;
  padding-top: 0.9em;
}

body.contact #form-container .with-border {
  border-top: 1px #43912a solid;
  padding-top: 8px;
}

body.contact form .message label {
  float: left;
  margin-top: 1px;
}

body.contact form input[type=text],
body.contact form input[type=email],
body.contact form input[type=password],
body.contact form textarea {
  width: 12em;
}

body.contact #content form textarea {
  width: 195px;
  height: auto;
}


/*** Login ***/


body.login .forms {
  margin: 0 auto;
}

body.login #content h2 {
  /* 18/24 */
  font-size: 1.8em;
}

body.login #content form label {
  width: 10em;
}

body.login #login-form-container h1,
body.login #login-form-container h2,
body.login #login-form-container a {
  color: #f7931e;
}

body.login #login-form-container p.forgot {
  margin: 1.636em 0 0;
  padding-top: 1.636em;
  background: url(/images/rule-login.png) left top repeat-x;
}

body.login #login-form-container form fieldset {
  background-image: url(/images/quote-rule.png);
}

body.login #create-form-container h1 {
  color: #61bc46;
}

/*** Customer Portal ***/

body.cportal #content .intro-container ul li a {
  color: #357221;
}

body.cportal #content .intro-container ul li.current a {
  background-color: #357221;
}

body.cportal .intro-container ul li.current,
body.cportal .subsections-container {
  background-image: url(/images/rule-cportal.png);
}

body.cportal .subsections-container h1,
body.cportal .subsections-container h2 {
  color: #357221;
}

body.cportal .subsections-container h1 {
  margin-bottom: 0;
  font-size: 1.8em;
  line-height: 1.333em;
  margin-top: 0.666em;
}

body.cportal #content table a,
body.cportal #content table a:hover {
  color: #003d7a;
}

body.cportal .subsections-container h1 {
  /* 24/36 */
  font-size: 2.4em;
  line-height: 1.5em;
  margin: 0;
}

/** Help **/
body.help #content .intro-container ul li a {
  color: #357221;
}

body.help #content .intro-container ul li.current a {
  background-color: #357221;
}

body.help .intro-container ul li.current,
body.help .subsections-container {
  background-image: url(/images/rule-cportal.png);
}

body.help .subsections-container h1,
body.help .subsections-container h2 {
  color: #357221;
}

body.help .subsections-container h1 {
  margin-bottom: 0.25em;
}

body.help .subsections-container h2 {
  margin-bottom: 0.25em;
}

body.help .subsections-container h3 {
  font-size: 1.4em;
  margin-bottom: 0.25em;
  font-weight: bold;
}

body.help #content table a,
body.help #content table a:hover {
  color: #003d7a;
}

body.help .subsections-container section h1 {
  /* 24/36 */
  font-size: 2.4em;
  line-height: 1.5em;
  margin: 0;
}

body.faqs #faq-content {
  border-top:1px solid #357221;
}

body.help ul.faq-links {
  list-style-type: none;
}

body.help ul.faqs {
  list-style-type: none;
}

body.help ul.faqs li p, body.help ul.faqs li ul {
  margin-bottom: 1em;
}

body.tutorials section {
  margin-bottom: 3em;
}

/* blame Angie for this */
.article-date {
  color: #6e6e6e;
  font-family: Helvetica, sans-serif;
  font-weight: normal;
  text-transform: none;
}

/*** HTML Upload ***/

body.upload #upload-message-container h1,
body.upload #upload-message-container p strong {
  color: #43912a;
}

body.upload #upload-container h1 {
  font-size: 2.4em;
  line-height: 1.5em;
  margin-bottom: 0;
}

body.upload div.row {
  clear: left;
  display: block;
  padding: 1px 3px;
  min-height: 2em;
}

body.upload fieldset {
	border: 1px solid;
	border-color: #357221;
	margin-bottom: 10px;
	position: relative;
}

body.upload fieldset legend {
  font-size: 11pt;
  font-weight: bold;
  color: #357221;
  margin: 0 0 0 0;
  padding: 0 5px;
}

body.upload label {
	font-size: 1.2em;
	float: left;
	margin-top: 0.5em;
	margin-right: 0.5em;
    color: #357221;
    width: 11em;
    text-align: right;
    font-weight: normal;
}

body.upload input.long {
	width: 18em;
}

body.upload div.actions {
	text-align: right;
	margin-top: 0.5em;
}

body.upload div.actions span {
	margin-right: 0.5em;
}

body.upload div.actions input {
	margin-bottom: 0em;
}

#upload-container .subsections-container {
  width: 805px;
}

body.upload #content form textarea {
  width: auto;
  height: auto;
}

body.upload #content input[type=file] {
	margin-right: 0.75em;
	margin-bottom: 0.25em;
}

body.upload #file_types {
    margin: 14px 12px 7px auto;
    text-align: right;
}

body.upload #file_types a {
    font-weight: bold;
}

body.upload #file_types .extension {
    right: 0;
}

.extendable {
    position: relative;
}

.extendable a {
    position: relative;
    padding: 2px 5px;
    margin: 0;
    z-index: 10;
    
    border-width: 2px;
    border-style: solid;
    border-color: transparent;
}

.extendable .extension {
    position: absolute;
    width: 275px;
    padding: 2px 5px;
    z-index: 5;
    
    text-align: left;
    background-color: #FFFFFF;
    border: 2px #DFDFDF solid;
}

.extendable .extension p {
    margin: 0.5em 0;
}

.extendable .hide_control {
	float: right;
	margin : 0 0 5px 5px;
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
	background:	url('../images/shadow.png') no-repeat bottom right;
	padding: 0 8px 9px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
	background: transparent;
}

body.errors div.content {
	text-align: center;
	font-size: 1.5em;
}