/* <style> */

/* <style> */

ul,ol { list-style: none; }
h1,h2,h3,h4,h5,h6,pre,code { font-size: 1em; font-weight: normal; }
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input,dl,dt,dd {
  margin: 0;
  padding: 0; }
a img,:link img,:visited img, fieldset { border: none; }
address { font-style: normal; }
header, section, article, nav, footer, hgroup { display: block; }
mark { background: transparent; }


body {
  font-family: times, serif;
  color: #ffffff;
  background: url("http://tgisolutions.com//images/tgi/tgi_bg.jpg") #2e5695;
  font-size: 14px;
  -webkit-text-size-adjust: none;
}

#wrapper {
  width: 840px;
  margin: 0 auto;
}

header {
  position: relative;
  height: 161px;
  overflow: hidden;
  margin: 0 0 40px 0;
}

header h1 {
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  background-position: -680px 0;
  float: left;
  height: 161px;
  width: 230px;
}

header h1 a {
  display: block;
  height: 100%;
  width: 100%;
  text-indent: -6000px;
}

header nav {
  float: right;
  padding-top: 60px;
}

nav.primary {
  width: 600px;
  height: 50px;
}

nav.primary li {
  float: left;
  width: 120px;
  height: 50px;
}

nav.primary li a {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 50px;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  background-position: -120px -400px;  
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #163a69;
  text-shadow: 0 1px #fff;
  text-decoration: none;
}

nav.primary li a.rightEnd {
  background-position: -240px -400px;    
}

nav.primary li a.leftEnd {
  background-position: 0 -400px;    
}

nav.primary a:hover {
  background-position: -120px -480px;  
  color: #0b2443;
}

nav.primary a:active {
  line-height: 52px;
}

nav.primary li a.rightEnd:hover {   background-position: -240px -480px; }
nav.primary li a.leftEnd:hover {   background-position: 0px -480px; }

#main {
  clear: both;
  width: 100%;
}

footer {
  position: relative;
  height: 220px;
  margin: 50px 0 0 0;
  clear: both;
  padding-right: 260px;
}

footer nav.primary {
  padding-top: 20px;
  margin-bottom: 40px;
}

footer dl.address,
footer dl.email_callout {
  float: left;
  padding: 0 0 30px 60px;
}

footer dl.address dt,
footer dl.email_callout dt {
  float: left;
  font-weight: bold;
  padding: 10px 20px 0 0;
}

footer dl.email_callout dd {
  padding: 5px 0 0 0;
}

footer dl.address dd,
footer dl.email_callout dd {
  float: left;
}

footer p.attrib {
  width: 100%;
  float: left;
  text-align: right;
  font-size: 11px;
}

footer dl.contact {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #5695d0;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  background-position: -680px -680px;
  float: right;
  height: 220px;
  width: 190px;
  padding: 0 20px;
}

footer dl.contact dt {
  font-size: 14px;
  font-style: italic;
  padding-top: 15px;
}

footer dl.contact dd {
  font-size: 28px;
}

h1.primary {
  font-size: 28px;
  text-align: center;
  margin-bottom: 40px;
  text-shadow: 0 1px #1e3a62;
}

h1.primary small {
  display: inline;
  color: #a8c4e0;
  font-size: 20px;
  text-shadow: none;
  font-style: italic;
  margin-left: 10px;
}

h1.primary small a {
  display: block;
  position: absolute;
  right: 0;
  height: 26px;
  line-height: 26px;
  bottom: -1px;
  font-style: normal;
  color: #a8c4e0 !important;
}

h1.primary small a:hover {
  text-decoration: underline;
}

a.tab {
  display: block;
  position: absolute;
  right: 15px;
  bottom: -31px;
  padding-left: 10px;
  margin-right: 40px;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: bold;
  font-style: italic;
  font-size: 14px;
  height: 31px;
  line-height: 31px;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  z-index: 509;
}

a.tab span {
  position: absolute;
  right: -40px;
  top: 0;
  width: 40px;
  height: 100%;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
}

a.tab { background-position: -360px -240px; }
a.tab:hover { background-position: -680px -240px; }
a.tab span { background-position: -640px -240px; }
a.tab:hover span { background-position: -960px -240px; }
a.tab.orange { background-position: -360px -280px; }
a.tab.orange:hover { background-position: -680px -280px; }
a.tab.orange span { background-position: -640px -280px; }
a.tab.orange:hover span { background-position: -960px -280px; }
a.tab.ltblue { background-position: -360px -320px; }
a.tab.ltblue:hover { background-position: -680px -320px; }
a.tab.ltblue span { background-position: -640px -320px; }
a.tab.ltblue:hover span { background-position: -960px -320px; }
a.tab.ltblue { color: #184585 !important; }

.content {
  color: #0b2443;
}

.content h1,
.content h2,
.content h3,
.content p,
.content ul,
.content ol {
  padding: 0 0 20px 0;
}

.content h1 {
  font-weight: bold;
  font-size: 18px;
}

.content h3 {
  font-size: 18px;
  font-weight: bold;
}

.content p,
.content ol,
.content ul {
  line-height: 20px;
}

.content ul,
.content ol {
  padding: 0 20px;
}

.content ul {
  list-style-type: disc;
}

.content a {
  color: #144fa2;
  text-decoration: underline;
}

.content a:hover {
  color: #327de8;
}

a.btn {
  position: relative;
  float: left;
  padding-left: 10px;
  margin-right: 40px;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: bold;
  font-style: italic;
  font-size: 14px;
  display: block;
  height: 29px;
  line-height: 27px;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  background-position: -360px -200px;
  display: inline;
}

a.btn span {
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  background-position: -640px -200px;  
  position: absolute;
  right: -40px;
  top: 0;
  width: 40px;
  height: 100%;
}

a.btn:hover {
  background-position: -680px -200px;
}

a.btn:active {
  line-height: 29px;
}

a.btn:hover span {
  background-position: -960px -200px;
}

.box {
  position: relative;
  background: #fff;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-box-shadow: 0 1px #1e3a62;
  -webkit-box-shadow: 0 1px #1e3a62;
}

#tour h2 {
  float: left;
  font-size: 20px;
}

#tour ul.tour_categories {
  float: left;
  font-size: 20px;
}

#tour ul.tour_categories li {
  float: left;
  margin-left: 20px;
}

#tour ul.tour_categories li a {
  color: #a8c4e0;
}

#tour ul.tour_categories li.active a {
  color: #fff;
  text-decoration: none;
  cursor: default;
}

#tour ul.tours {
  clear: both;
  padding-top: 10px;
}

#tour ul.tours li {
  position: relative;
  padding: 20px 20px 20px 120px;
  color: #a8c4e0;
  background: #3a67a7;
  margin: 0 0 5px 0;
}

#tour ul.tours li p.subcategory {
  display: none;
}

#tour ul.tours li b {
  color: #fff;
  font-weight: normal;
  font-size: 20px;
}

#tour ul.tours li a.btn {
  position: absolute;
  left: 15px;
  top: 50%;
  margin-top: -15px;
}

#tour .content.box {
  padding: 20px;
  margin: 0 0 80px 0;
}

#tour .content.box .movie {
  margin: 0 0 20px 0;
}

#tour .content.box a.tab {
  left: 20px;
  right: auto;
}

form {
  color: #0b2443;
  padding: 0 50px;
  overflow: hidden;
}

form p {
  text-align: right;
  margin: 0 0 20px 0;
  padding: 0;
}

form li {
  display: block;
  clear: both;
  margin: 0 0 20px 0;
}

form input.text {
  width: 402px;
  margin: 5px 0;
  padding: 3px;
  border: 1px solid #999;
}

form textarea {
  border: 1px solid #999;
}

form li.half {
  float: left;
  clear: none;
  width: 180px;
  margin-right: 20px;
}

form li.half input.text {
  width: 172px;
}

form li.state {
  float: left;
  clear: none;
  width: 50px;
  margin-right: 20px;
}

form li.state input.text {
  width: 42px;
}

form li.zip {
  float: left;
  clear: none;
  width: 80px;
}

form li.zip input.text {
  width: 72px;
}

form li.action {
  text-align: center;
}

form label {
  font-weight: bold;
  display: block;
}

form input, form select {
  font-family: arial, sans-serif;
}

form select {
  width: 70%;
}

form textarea {
  width: 400px;
  height: 140px;
}

form input.submit {
  margin: 0 0 20px 0;
  float: right;
  width: 120px;
}

section#home {
  margin: 0 70px;
}

section#home article.feature {
  float: left;  
  height: 180px;
  background-image: url("http://tgisolutions.com//images/tgi/tgi_slices.gif");
  position: relative;
  cursor: pointer;
}

section#home article.feature.casenotes {
  width: 220px;
}

section#home article.feature.autumn8 {
  float: right;
  margin: 0 0 60px 0;
  width: 460px;
  background-position: -220px 0;
}

section#home article.feature.customercare {
  width: 350px;
  height: 70px;
  background-position: 0px -240px;
  margin-bottom: 80px;
}

section#home #leftMask {
  position: absolute;
  overflow: hidden;
  left: 0;
  top: 0;
  width: 220px;
  height: 179px;
}

section#home #rightMask {
  position: absolute;
  overflow: hidden;
  left: 0;
  top: 0;
  width: 460px;
  height: 179px;
}

section#home #leftMask img,
section#home #rightMask img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 500;
}

section#home #rightMask img {
  left: -221px;
}

section#home article.feature hgroup {
  position: absolute;
  left: 10px;
  bottom: 0;
  padding: 0 0 16px 0;
  z-index: 502;
  color: #ffffff;
  overflow: visible;
}

section#home article.feature h2 {
  font-size: 24px;
  font-weight: bold;
}

section#home article.feature h3 {
  font-size: 14px;
  line-height: 14px;
  font-style: italic;
  z-index: 505;  
}

section#home article.feature.autumn8 hgroup {
  left: 210px;
}

section#home article.feature.customercare hgroup {
  padding-bottom: 18px;
  color: #184585;
}

section#home article.feature a.tab {
  bottom: -29px;
  line-height: 30px;
}

section#home p {
  float: left;
  width: 330px;
  margin-right: 20px;
  font-size: 16px;
  font-weight: bold;
  text-align: right;
  line-height: 70px;
  display: inline;
}

section#product {
  overflow: hidden;
  padding-bottom:40px;
}

section#product section#overview {
  float: left;
  width: 280px;
  margin: 0 40px 0 0;
}

section#product section#overview article.content.box {
  padding: 20px 20px 0 20px;
  margin: 0 0 60px 0;
}

.callout {
  padding: 20px 10px;
}

.callout p {
  font-size: 20px;
  text-align: center;
  padding: 0;
}

.callout p a {
  display: block;
  font-size: 24px;
  text-decoration: none;
  margin-top: 5px;
}

section#product section#details {
  width: 520px;
  float: left;
}

section#product section#details nav {
  padding: 20px 0 20px 20px;
  overflow: hidden;
}

section#product section#details nav li {
  display: inline;
  text-transform: uppercase;
  font-weight: bold;
}

section#product  section#details nav li a {
  display: block;
  float: left;
  width: 158px;
  text-decoration: none;
  border-left: 1px solid #3a67a7;
  border-right: 1px solid #3a67a7;
  border-top: 1px solid #3a67a7;
  border-bottom: 1px solid #3a67a7;
  text-align: center;
  padding: 3px 0;
  color: #0b2443;
}

section#product section#details nav li.screenshots a {
  border-right: none;
  width: 160px;
}

section#product section#details nav li.downloads a {
  border-left: none;
  width: 160px;
}

section#product section#details nav li.active a {
  background: #3a67a7;
  color: #fff;
}

section#product section#details ul#screenshots li {
  float: left;
  width: 230px;
  margin: 0 0 20px 20px;
  display: inline;
  color: #0b2443;
}

section#product section#details ul#screenshots li a {
  display: block;
}

section#product section#details ul#screenshots li a img.thumbnail {
  border: 1px solid #3a67a7;
  width: 230px;
  height: 124px;
}

section#product section#details ul#screenshots li a img.fullscreen {
  display: none;
}

section#product section#details div {
  padding: 20px 40px;
  color: #0b2443;
  display: none;
}

section#page .center_col {
  width: 720px;
  margin: 0 auto 40px auto;
}

section#page .left_col {
  width: 280px;
  float: left;
  margin: 0 20px 40px 0;
}

section#page .right_col {
  width: 520px;
  float: left;
  margin: 0 0 40px 0;
}

section#page .page_bottom {
  clear: both;
}

section#page .box {
  margin-bottom: 20px;
}

section#page article.box.content {
  padding: 20px;
}

section#page .store.right_col p,
section#page .downloads article p,
section#page .care_pricing p {
  text-align: right;
  overflow: hidden;
  border-top: 1px solid #a8c4e0;
  padding: 10px 0 0 0;
  margin: 10px 0 0 0;
}

section#page .store article p strong,
section#page .downloads article p strong,
section#page .care_pricing p strong {
  float: left;
  text-align: left;
}

section#page .store article p strong,
section#page .downloads article p strong {
  width: 320px;
}

section#page .store article p em,
section#page .downloads article p em,
section#page .care_pricing p em {
  display: block;
  text-align: left;
  font-family: georgia;
  font-size: 12px;
}

section#page .store.page_bottom article p {
  font-size: 24px;
  text-align: center;
  border-bottom: none;
  overflow: visible;
  margin: 0;
  padding: 0;
}

section#page .customercare .care_pricing h1 {
  padding-bottom: 10px;
}

section#page article.download_documents {
  padding: 30px;
  text-align: center;
}

section#page article.download_documents ul {
  list-style-type: none;
  padding: 0;
}

section#page article.download_documents ul li {
  margin: 0 0 10px 0;
}

section#page article.download_documents ul li a {
  font-size: 22px;
  line-height: 22px;
}

section#page article.download_documents ul li em {
  display: block;
  font-family: georgia;
  font-size: 12px;
  line-height: 12px;
}

section#page .center_col.form {
  width: 510px;
  padding: 20px;
}

section#page .form p {
  color: #0b2443;
  margin: 0 0 20px 0;
}

section#testimonials ul {
  width: 640px;
  margin: 0 auto;
}

section#testimonials ul li {
  margin: 0 0 20px 0;
  overflow: hidden;
  padding: 30px;
}

section#testimonials ul li img {
  display: block;
  border: 1px solid #333;
  float: left;
}

section#testimonials ul li article {
  float: right;
  width: 420px;
}

section#testimonials ul li p.cite {
  font-style: italic;
  padding: 0;
}

section#testimonials ul li p.cite b {
  display: block;
}

#lightbox {
  z-index: 600;
}

#lightbox #lightbox-flood {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: none;
  background: #000;
  z-index: 599;
}

#lightbox #lightbox-content {
  color: #fff;
  font-size: 14px;
  position: fixed;
  text-align: center;
  width: 100%;
  top: 100px;
  left: 0px;
  z-index: 600;
}

hr {
  height: 1px;
  border: none;
  background: #a8c4e0;
  margin: 0 0 20px 0;
}













