/*------------------------------------------------------------
   GLOBAL
------------------------------------------------------------*/
html {
   font-size: 62.5%;
}

body
{
   background-image: url(../graphics/gt-background-tile.png);
   background-color: #f9efd7;
   font-family: "allumi-std", arial, helvetica, verdana, san-serif;
   font-size: 1.6rem;
   font-weight: 100;
   line-height: 1.6;
   color: #050505;
   text-align: left;
   margin: 0 auto;
   padding: 0;
}

a:link, a:visited { color: #007a85; text-decoration: none; }
a:hover, a:active { color: #007a85; text-decoration: underline; }

/* Text - Fonts + Decoration */
h1, h2, h3, h4
{
   font-family: "allumi-std", arial, helvetica, verdana, san-serif;
   font-weight: normal;
   font-size: 4.2rem;
   line-height: 1.25;
   /* text-transform: uppercase; */
   margin: 0 0 12px 0;
   padding: 0;
   color: #020202;
}

h1
{
   font-size: 3.4rem;
   font-weight: 100;
   line-height: 1.25;
   text-transform: uppercase;
}

h2 
{ 
   font-size: 2.4rem;
   font-weight: 700;
   line-height: 1.2;
   margin: 20px 0 10px 0;
   padding: 0;
   color: #005aaa;
}

h3 
{ 
   font-size: 2.0rem;
   font-weight: normal;
   line-height: 1.3;
   margin: 20px 0 10px 0;
   padding: 0;
   color: #050505;
}

h4
{
   font-size: 1.8rem;
   line-height: 1.1;
   margin: 15px 0 5px 0;
   padding: 0;
}

h1 + h2 { margin-top: -10px; }

p 
{ 
   font-size: inherit;
   font-weight: inherit;
   line-height: inherit;
   margin: 0 0 13px 0; 
   color: #050505;
}

ul, ol
{
   list-style-type: disc;
   font-size: inherit;
   line-height: inherit;
   margin: 10px 0 15px 20px;
   padding: 0 0 0 15px;
   overflow: hidden;
}

ul { list-style-type: circle; }
ol { list-style-type: decimal; }

ul ul, ol ol { font-size: 100%; }

li
{
   margin: 0 0 0 15px;
   padding: 0 0 0 0;
}

b { font-weight: 700; }

blockquote 
{
   font-size: 1.2rem;
   font-style: italic;
   margin: 1em 0;
}

blockquote cite
{
   color: #26328c;
   display: block;
   margin: 0.3em 0;
}

.quote
{
   font-style: italic;
}

img { border: 0px; max-width: 100%; height: auto; }

input[type="search"], input[type="submit"] 
{ 
   -webkit-appearance: none;
   -webkit-border-radius: 0px;
}

::-webkit-input-placeholder { color: #58595b; /* WebKit browsers */ }
:-moz-placeholder { color: #58595b; /* Mozilla Firefox 4 to 18 */ }
::-moz-placeholder { color: #58595b; /* Mozilla Firefox 19+ */ }
:-ms-input-placeholder { color: #58595b; /* Internet Explorer 10+ */ }
::-webkit-search-cancel-button { -webkit-appearance: none; /* hide the default "X" button */ }

.left { float: left; }
.right { float: right; }
.imageLeft { margin: 0px 15px 10px 0px; float: left; }
.imageRight { margin: 0px 0px 10px 10px; float: right; }
.clear { clear: both; }
.clearLeft { clear: left; }
.clearRight { clear: right; }
.success { color: #060; }
.error { color: #a00; }
.note { color: #666; }
.uppercase { text-transform: uppercase; }
strike { color: #a00; }

.visuallyHidden 
{ 
   position: absolute;
   clip: rect(1px 1px 1px 1px); 
   width: 1px;
   height: 1px;
   overflow: hidden; 
}

/*------------------------------------------------------------
   Special Content - iframe video wrapper
------------------------------------------------------------*/
#row-banner
{
   position: relative;
   box-sizing: border-box;
   background-color: #027b85;
   font-size: 1.25rem;
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: 1px;
   text-transform: uppercase;
   text-align: right;
   color: #fff;
   margin: 0 -40px 30px 0;
   padding: 10px 24px;
   height: auto;
}

#row-banner:after
{
   position: absolute;
   content: url('/graphics/location-back.png');
   display: block;
   bottom: -12px;
   right: 0px;
}

#row-banner a { display: block; }
#row-banner #training-dates-button { margin-bottom: 5px; }


@media only screen and (min-width: 800px) and (max-width: 970px) 
{
   #row-banner { margin-right: 0; }
   #row-banner:after { display: none; }
}


#row-banner a { color: #fff; text-decoration: none; }
#row-banner a:hover, #row-banner a:active { color: #fff; text-decoration: underline; }

.videoWrapper 
{
   position: relative;
   padding-bottom: 56.25%; /* 16:9 */
   padding-top: 0;
   height: 0;
}

.videoWrapper iframe 
{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

/*------------------------------------------------------------
   Header
------------------------------------------------------------*/
.pageFrame
{
   margin: 0 auto 0 auto;
   padding: 0;
   width: 100%;
   min-width: 320px;
   /* max-width: 940px; */
}

#quick-nav { display: none; }

header
{
   background-color: #144171;
}

header #masthead
{
   position: relative;

   background: #144171; /* Old browsers */
   background: -moz-linear-gradient(left, #144171 0%, #04579d 50%, #04579d 51%, #144171 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, right top, color-stop(0%,#144171), color-stop(50%,#04579d), color-stop(51%,#04579d), color-stop(100%,#144171)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* IE10+ */
   background: linear-gradient(to right, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#144171', endColorstr='#144171',GradientType=1 ); /* IE6-9 */

   margin: 0 auto;
   padding: 0;
   width: 100%;
   max-width: 940px;
   height: 120px;
}

@media only screen and (min-width: 800px) and (max-width: 920px) 
{
   header #masthead { height: 140px; }
}

header #logo
{
   position: absolute;
   top: 35px;
   /* bottom: 25px; */
   left: 25px;
   width: 240px;
   max-width: 240px;
   height: auto;
}

/* The Cart, Checkout, Login Buttons and Search Form */
header .topNav
{
   display: block;
   position: absolute;
   top: 18px;
   font-family: "allumi-std", "Gill Sans", "Gill Sans MT", Calibri, arial, san-serif;
   font-size: 1.2rem;
   line-height: 1.0;
   font-weight: 500;
   font-weight: normal;
   text-transform: uppercase;
}

header #topNavCheckout { right: 350px; }
header #topNavCheckout #cartIcon { margin: 0 15px 0 0; float: left; }
header #topNavLogin { right: 20px; }

header .topNav .bracket { float: left; }

header .topNav a.navButton
{
   display: block;
   text-align: center;
   margin: 2px -1px 0 -1px;
   padding: 1px 8px 3px 8px;
   color: #fff;
   text-decoration: none;
   float: left;
}

header .topNav a.navButton:hover, 
header .topNav a.navButton:active { background-color: #037b85; }

header #searchForm
{
   border-right: solid 1px #91876b;
   border-left: solid 1px #91876b;
   position: absolute;
   display: block;
   top: 9px;
   padding: 8px 23px 8px 23px;
   right: 105px;
   width: 170px;
   height: auto;
}

header #searchForm #searchInput
{
   box-sizing: border-box;
   border: solid 1px #fff;
   background-color: #fff;
   font-family: "allumi-std", "Gill Sans", "Gill Sans MT", Calibri, arial, san-serif;
   font-size: 1.2rem;
   font-weight: 500;
   line-height: normal;
   font-weight: normal;
   color: #000;
   margin: 0px;
   padding: 0px 4px 0px 4px;
   width: 170px;  /* */
   height: 24px;
   float: left;
}

header #searchForm #searchButton
{
   cursor: pointer;
   margin: 0 0 0 -20px;
   padding: 0;
   width: 15px;
   height: 24px;
   float: left;
}

header #searchForm #searchButton:hover, header #searchForm #searchButton:active { }

/*------------------------------------------------------------
 Top Navigation
 ------------------------------------------------------------*/
#mainNav
{
   position: absolute;
   right: 8px;
   top: 67px;
   margin: 0;
   padding: 0;
   width: 65%;
   /* width: 630px; */
   max-width: 630px;
   height: auto;
}

#mainNav ul
{
   list-style-type: none;
   font-family: "allumi-std", "Gill Sans", "Gill Sans MT", Calibri, arial, san-serif;
   font-size: 1.2rem;
   font-weight: 500;
   letter-spacing: 0px;
   line-height: 1.0;
   font-weight: normal;
   text-transform: uppercase;
   margin: 0;
   padding: 0;
   float: right;
}

/*
#mainNav ul.level1-menu
{
   width: auto;
   height: 30px;
}
*/

/* #mainNav ul ul { display: none; } */

#mainNav li
{
   margin: 0px;
   padding: 0px;
}

#mainNav ul.level1-menu > li { float: left; }

#mainNav #nav1 { }
#mainNav #nav2 { }
#mainNav #nav3 { }
#mainNav #nav4 { }
#mainNav #nav5 { }
#mainNav #nav6 { }
#mainNav #nav7 { }

#mainNav li .bracket { float: left; visibility: hidden; }
#mainNav li:hover .bracket { visibility: visible; }
#mainNav li.selected .bracket { visibility: visible; }

#mainNav li a
{
   display: block;
   text-align: center;
   margin: 4px -6px 0 -6px;
   padding: 5px 8px 6px 8px;
   color: #fff;
   float: left;
}

#mainNav li a:link, #mainNav li a:visited { color: #fff; text-decoration: none; }
#mainNav li a:hover, #mainNav li a:active { background-color: #037b85; text-decoration: none; }
#mainNav li.selected a { background-color: #037b85; text-decoration: none; }


/*------------------------------------------------------------
 Sub Navigation AND Aside
 ------------------------------------------------------------*/
#subnav
{
   /* white-space: nowrap; */
   font-family: "allumi-std", "Gill Sans", "Gill Sans MT", Calibri, arial, san-serif;
   font-size: 1.4rem;
   font-weight: 600;
   margin: 0;
   padding: 0;
   overflow: hidden;
}

#subnav ul
{
   background-color: #f4f4f4;
   list-style-type: none;
   margin: 0;
   padding: 40px 0 0 0;
}

#subnav li
{
   border-bottom: solid 1px #ddd;
   margin: 0;
   padding: 0;
}

#subnav li.menu3 { background-color: #fafafa; }

#subnav li a
{
   display: block; 
   padding: 8px 8px 8px 27px;
   width: auto;
   color: #333; 
   text-decoration: none; 
}

#subnav li.menu2 a { padding-left: 45px; }
#subnav li.menu3 a { padding-left: 63px; }

#subnav li.menu1Sel a,
#subnav li.menu2Sel a,
#subnav li.menu3Sel a
{
   color: #037b85; 
}

/*
#subnav li.menu1Sel a, 
#subnav li.menu1Sel a:hover, 
#subnav li.menu1Sel a:active 
{
   background-color: #037b85;
   color: #fff;
}
*/

#subnav li.menu1Sel a { font-weight: bold; }
#subnav li.menu2Sel a { font-weight: normal; }

#subnav li a:hover, #subnav li a:active
{
   background-color: #35969e;
   color: #fff;
}

aside
{
   border: dotted 2px #999;
   background-color: #eee;
   padding: 10px 10px 2px 10px;
   font-size: 1.0rem;
}

aside h2 { margin-top: 0px }

/*------------------------------------------------------------
   Mobile Menu
-------------------------------------------------------------*/
a.toggleMenu, .mobile-menu { display: none; }

a.toggleMenu { text-align: center; }

/*--------------------------------------------------
   Page Frames and Sidebar
--------------------------------------------------*/
/* Home and Full Page formats */
#pageFrameHome #contentWrapper,
#pageFrame2F #contentWrapper,
#pageFrame2FL #contentWrapper,
#pageFrameF #contentWrapper
{
   background-color: #fff;
   margin: 0 auto;
   padding: 35px 0 60px 0;
   width: 100%;
   max-width: 940px;
}

#pageFrameHome #contentWrapper { padding-top: 25px; }

#pageFrame2F #content,
#pageFrame2FL #content,
#pageFrameF #content
{
   padding: 0 4% 0 4%;
}

/* Inner Page with Subnav Formats */
#pageFrame1C #contentWrapper,
#pageFrame2C #contentWrapper,
#pageFrame2CL #contentWrapper,
#pageFrame2BL #contentWrapper
{
   display: table;
   background-color: #fff;
   margin: 0 auto;
   padding: 0;
   width: 100%;
   max-width: 940px;
}

#pageFrame1C #content,
#pageFrame2C #content,
#pageFrame2CL #content,
#pageFrame2BL #content
{
   display: table-cell;
   vertical-align: top;
   padding: 35px 3% 60px 4%;
}

.pageFrame #sidebar
{
   display: table-cell;
   background-color: #f4f4f4;
   vertical-align: top;
   padding: 0 0 60px 0;
   width: 24%;
   width: 200px;
   min-width: 200px;
}

/*------------------------------------------------------------
   Home Page
------------------------------------------------------------*/
#pageFrameHome h1 
{
   font-size: 5.0rem;
   font-weight: 600;
   color: #91876c;
}

#pageFrameHome h2
{
   color: #007277;
}

#pageFrameHome h1 + h2
{
   font-size: 3.0rem;
   font-variant: small-caps;
}

#pageFrameHome #col-positioning
{
   clear: right;
   margin: 0 4% 40px 4%;
   padding: 0;
}

#pageFrameHome .actionCol
{
   margin: 0 3% 20px 3%;
   padding: 0;
   width: 27%;
   height: auto;
   float: left;
}

#pageFrameHome .actionImage
{
   background-image: url('/graphics/hero-sprite4.jpg');
   background-repeat: no-repeat;
   margin: 0 auto;
   width: 230px;
   max-width: 230px;
   height: 250px;
}

/*left top*/
#pageFrameHome #actionImage1 { background-position: 0px 0px; }
#pageFrameHome #actionImage1Hover,
#pageFrameHome #actionImage1:hover,
#pageFrameHome #actionImage1:active { background-position: 0px -250px; }

#pageFrameHome #actionImage2 { background-position: -250px 0px; }
#pageFrameHome #actionImage2Hover,
#pageFrameHome #actionImage2:hover, 
#pageFrameHome #actionImage2:active { background-position: -250px -250px; }

#pageFrameHome #actionImage3 { background-position: -500px 0px; }
#pageFrameHome #actionImage3Hover,
#pageFrameHome #actionImage3:hover,
#pageFrameHome #actionImage3:active { background-position: -500px -250px; }

#pageFrameHome .actionCol a.actionButton,
#pageFrameHome .actionCol a.actionButton:link,
#pageFrameHome .actionCol a.actionButton:visited
{
   background-image: url('/graphics/button-sprite3.png');
   background-repeat: no-repeat;
   display: block;
   font-size: 1.9rem;
   line-height: 1.0;
   font-weight: 600;
   letter-spacing: 2px;
   text-align: center;
   text-transform: uppercase;
   margin: 0 auto 20px auto;
   padding: 16px 5px 16px 5px;
   width: 165px;
   height: 18px;
   color: #007078;
}

#pageFrameHome .actionCol a.actionButton:hover,
#pageFrameHome .actionCol a.actionButton:active
{
   background-position: 0px -50px;
   color: #fff;
   text-decoration: none;
}

#pageFrameHome .actionCol p
{
   line-height: 1.8;
   color: #027b85;
   text-align: center;
   max-width: 230px;
   margin: 0 auto;
}

#pageFrameHome .actionCol p a 
{
   border-bottom: dotted 1px #027b85;
   text-decoration: none;
}

#pageFrameHome #col-how-it-works 
{
   background: url('/graphics/bracket-line.gif'), url('/graphics/bracket-line.gif'), url('/graphics/bracket-line.gif'), url('/graphics/bracket-line.gif');
   background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
   background-position: top left, top right, bottom left, bottom right;

   border-left: solid 2px #027b85;
   border-right: solid 2px #027b85;
   width: 86%; 
   margin: 20px 4% 30px 4%;
   padding: 10px 3% 15px 3%;
   float: none; 
}

#pageFrameHome #col-how-it-works h2 
{ 
   font-size: 7.0rem;
   font-weight: 200;
   font-variant: small-caps;
   color: #8e8868; 
   margin-top: 0; 
}

#pageFrameHome #col-how-it-works p 
{ 
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   background-color: #d9ebec; 
   padding: 20px 25px 20px 20px;
   width: auto;
   height: auto;
}

#pageFrameHome #col-how-it-works #photo
{
   margin: 0 0 0 20px;
   width: 50%;
   height: auto;
   float: right; 
}

#pageFrameHome #col-about
{
   margin: 0 4% 0 4%;
   width: 44%;
   float: left;
}

#pageFrameHome #col-blog
{ 
   margin: 0 4% 0 0;
   width: 44%;
   float: left;
}

/*--------------------------------------------------
   1 Column w Subnav
--------------------------------------------------*/

/*--------------------------------------------------
   2 Column w Subnav
--------------------------------------------------*/
/*--------------------
   2 column centered
--------------------*/
#pageFrame2C  #row1 { padding: 0; }

#pageFrame2C  #col1 { padding: 0 5% 0 0; width: 47%; float: left; }
#pageFrame2C  #col2 { width: 47%; float: left; }

#pageFrame2C  #row2 { }
#pageFrame2C  #row2:empty { display: none; }

#pageFrame2C  #col1 h2:first-child { margin: 0 0 10px 0; }
#pageFrame2C  #col2 h2:first-child { margin: 0 0 10px 0; }

/*--------------------
   2 Column Left w Subnav
--------------------*/
#pageFrame2CL #row1 { padding: 0; }

#pageFrame2CL #col1 { padding: 0 5% 0 0; width: 62%; float: left; }
#pageFrame2CL #col2 { font-size: 1.4rem; width: 33%; float: left; }

#pageFrame2CL #row2 { }
#pageFrame2CL #row2:empty { display: none; }

#pageFrame2CL #col1 h2:first-child { margin: 0 0 10px 0; }

/* 2 column left info area on right */
#pageFrame2CL #col2 h2 { font-size: 2.2rem; margin: 0 0 10px 0; }
#pageFrame2CL #col2 h3 { font-size: 1.6rem; margin: 15px 0 10px 0; }
#pageFrame2CL #col2 h4 { font-size: 1.6rem; margin: 15px 0 5px 0; }

#pageFrame2CL #col2 img
{
   display: inline;
   border: 1px solid #666;
   margin: 0px 20px 15px 0px;
   float: left;
}

/*--------------------
   Blog - 2 Column Left w Subnav
--------------------*/
#pageFrame2BL #row1 { padding: 0; }
#pageFrame2BL #col1 { padding: 0 5% 0 0; width: 65%; float: left; }
#pageFrame2BL #col2 { font-size: 1.4rem; width: 30%; float: left; }

#pageFrame2BL #col1 h2:first-child { margin: 0 0 10px 0; }

/* 2 column left info area on right */
#pageFrame2BL #col2 h2 { font-size: 2.2rem; margin: 0 0 10px 0; }
#pageFrame2BL #col2 h3 { font-size: 1.6rem; margin: 15px 0 10px 0; }
#pageFrame2BL #col2 h4 { font-size: 1.6rem; margin: 15px 0 5px 0; }

/*--------------------------------------------------
   Full Page 2 Column
--------------------------------------------------*/
/*--------------------
   2 column centered
--------------------*/
#pageFrame2F #row1 { padding: 0 0 15px 0; }
#pageFrame2F #col1 { padding: 0 5% 0 0; width: 47%; float: left; }
#pageFrame2F #col2 { width: 47%; float: left; }
#pageFrame2F #row2 { }
#pageFrame2F #row2:empty { display: none; }

/*--------------------
   2 column left
--------------------*/
#pageFrame2FL #row1 { padding: 0 0 15px 0; }
#pageFrame2FL #col1 { padding: 0 5% 0 0; width: 62%; float: left; }
#pageFrame2FL #col2 { font-size: 1.3rem; width: 33%; float: left; }
#pageFrame2FL #row2 { }
#pageFrame2FL #row2:empty { display: none; }

/* 2 column left info area on right */
#pageFrame2FL #col2 h2 { font-size: 2.2rem; margin: 0 0 10px 0; }
#pageFrame2FL #col2 h3 { font-size: 1.6rem; margin: 15px 0 10px 0; }
#pageFrame2FL #col2 h4 { font-size: 1.6rem; margin: 15px 0 5px 0; }

#pageFrame2FL #col2 img
{
   display: inline;
   border: 1px solid #666;
   margin: 0px 20px 15px 0px;
   float: left;
}

/*--------------------
   Blog 2 column left
--------------------*/
/*
#pageFrame2BL #row1 { padding: 0 0 15px 0; }
#pageFrame2BL #col1 { padding: 0 5% 0 0; width: 70%; float: left; }
#pageFrame2BL #col2 { font-size: 1.3rem; width: 25%; float: left; }
#pageFrame2BL #row2 { }
#pageFrame2BL #row2:empty { display: none; }

#pageFrame2BL #col2 h2 { font-size: 2.2rem; margin: 0 0 10px 0; }
#pageFrame2BL #col2 h3 { font-size: 1.6rem; margin: 15px 0 10px 0; }
#pageFrame2BL #col2 h4 { font-size: 1.6rem; margin: 15px 0 5px 0; }
*/

/*--------------------------------------------------
   Full Page
--------------------------------------------------*/

/*------------------------------------------------------------
   Content Type - News Summary
------------------------------------------------------------*/
.newsSummary, #newsList
{
   list-style-type: none;
   margin: 0 0 11px 0;
   padding: 0;
}

.newsSummary li, #newsList li
{
   margin: 0 0 14px 0;
   padding: 0;
}

ul.newsSummary li, ul#newsList li
{
   list-style-image: none;
}

.newsSummary .date, #newsList .date { font-style: italic; }
.newsSummary li a, #newsList li a { font-weight: bold; }

/*------------------------------------------------------------
   Content Type - Blog
------------------------------------------------------------*/
.blogSummary, #blogList
{
   list-style-type: none;
   margin: 0 0 11px 0;
   padding: 0;
}

.blogSummary li, #blogList li
{
   list-style-image: none;
   margin: 0 0 14px 0;
   padding: 0;
}

/* Blog Summary - Short list on Home Page */
.blogSummary .author { font-weight: bold; }
.blogSummary .date { font-style: italic; color: #666; }
.blogSummary .comments { font-style: italic; color: #666; }
.blogSummary li a { font-weight: bold; }

/* Blog List - Long full List on Blog Page */
#blogList
{
   padding: 0 0 10px 0;
}

#blogList .author { font-weight: bold; }
#blogList .date { font-style: italic; color: #666; }
#blogList .comments { font-style: italic; color: #666; }
#blogList li a { font-weight: bold; }

.blogListItem
{
   border-bottom: 1px solid #b5b2b3;
   padding: 10px 0px 10px 0px;
}

.blogListItem:first-child { padding-top: 0px; }

.blogListItem .photo { width: 100%; }

.blogListItem h2, .blogListItem h3 { margin: 0; padding: 0; }

/* Blog Post - Detailed Single Blog Post */
#blogPost .photo { width: 100%; }
#blogPost .author { font-weight: bold; }
#blogPost .date { font-style: italic; color: #666; }
#blogPost .comments { font-style: italic; color: #666; }
#blogPost li a { font-weight: bold; }
#blogPost hr { margin: 20px 0 10px 0; }

/*--------------------------------------------------
   Sitemap Styles
--------------------------------------------------*/
#sitemap
{
   list-style-type: none;
   margin: 0 0 1em 0;
   padding: 0;
}

/*------------------------------------------------------------
   Content Type - Tables
------------------------------------------------------------*/
.table1-4, .table1, .table2, .table3, .table4
{
   font-family: arial, helvetica, verdana, sans-serif;
   border-collapse: collapse;
   border: 0;
   margin: 0 0 20px 0;
   max-width: 100%;
}

/* th */
.table1-4 th
{
   font-family: "allumi-std", arial, helvetica, verdana, san-serif;
   font-size: 1.5rem;
   font-weight: bold;
   text-align: left;
   vertical-align: bottom;
}

.table1 th, .table2 th
{
   background-color: #007277;
   color: #fff;
   padding: 3px 8px;
}

.table1 th { border: solid 1px #666; }

.table3 th
{ 
   color: #007277;
   padding: 4px 2px 4px 0px;
}

.table4 th
{
   color: #007277;
   padding: 4px 2px 4px 0px;
}

.table1-4 th .fullHeading { display: inline; }
.table1-4 th .altHeading { display: none; }

/* td */
.table1-4 td
{
   vertical-align: top;
   font-size: 1.3rem;
   line-height: 1.2;
   font-weight: normal;
   padding: 4px 8px;
}

.table1-4 .label { display: none; }

.table1 td
{
   border-left: solid 1px #c2c2c2;
   border-right: solid 1px #c2c2c2;
   border-bottom: solid 1px #c2c2c2;
}

.table2 td
{
   border-bottom: solid 1px #c2c2c2;
}

.table3 td
{
   border-top: solid 1px #c2c2c2;
   padding: 8px 2px 8px 0px;
}

.table4 td
{
   padding: 8px 2px 8px 0px;
}

.table1 .highlight td { background-color: #f4f4f4; }
.table2 .highlight td { background-color: #f4f4f4; }
.table3 .highlight td { background-color: #f4f4f4; }

.table1-4 .imageLeft { margin: 0px 15px 0px 0px; }
.table1-4 .imageRight { margin: 0px 0px 0px 10px; }

.table1-4 p { font-size: inherit; line-height: 1.2; }
.table1-4 p:last-child { margin: 0; }

.table1-4 caption
{ 
   caption-side: top; 
   font-size: 1.15rem;
   font-weight: normal;
   font-style: normal;
   text-align: left;
   padding: 0 0 6px 0;
   color: #666;
}

.table1-4 .lowlight td
{ 
   color: #666;
}

.p + .table1-4 { }

/*------------------------------------------------------------
   GALLERY
------------------------------------------------------------*/
.gallery ul
{
   overflow-x: visible;
   list-style-type: none;
   /* font-family: verdana, arial, helvetica, san-serif; */
   font-size: 1.2rem;
   line-height: 0;
   text-align: left;
   padding: 0;
   margin: 0;
   width: 100%; 
}

.gallery li
{
   display: inline-block;
   vertical-align: top;
   margin: 0;
   padding: 0;
   zoom: 1;
}

*+html .gallery li { display: inline; /* IE 7 Hack */ }

/* Fixed width galleries */
.gallery1Col li { width: 100%; }
.gallery2Col li { width: 48%; margin-right: 3%; }
.gallery3Col li { width: 31%; margin-right: 2.5%; }
.gallery4Col li { width: 23%; margin-right: 1.5%; }
.gallery5Col li { width: 18%; margin-right: 1.5%; }
.gallery6Col li { width: 15%; margin-right: 1%; }
.gallery7Col li { width: 13%; margin-right: 1%; }
.gallery8Col li { width: 11%; margin-right: 1%; }

.gallery li.thumbEnd { margin-right: 0; }

.gallery li h3 { margin: 10px 0 0 0; font-size: 1.4rem; }

.gallery li img { width: 100%; height: auto; }

.gallery li p 
{
   font-size: inherit;
   line-height: 1.3;
   text-align: left;
   color: #000;
   margin: 5px 0 0 0;
   padding: 0;
}

.gallery li .thumbCaptionLeft { text-align: left; }
.gallery li .thumbCaptionCenter { text-align: center; }

.gallery li a:link, .gallery li a:visited { color: #000; text-decoration: underline; }
.gallery li a:hover { color: #9C1618; text-decoration: underline; }
.gallery li a.thumbImageLink { border: none !important; }

/*------------------------------------------------------------
   CALENDAR
------------------------------------------------------------*/
.calendar, .week-cal
{
   border-collapse: collapse;
   border: 0px;
   border-left: solid 1px #999;
   border-right: solid 1px #999;
   border-bottom: solid 1px #999;
   margin: 0px 0px 0px 0px;
   padding: 0px;
}

.calendar .row-heading
{
   background-color: #9d0000;
   border-top: solid 1px #9d0000;
   border-left: solid 1px #9d0000;
   border-right: solid 1px #9d0000;
   height: 50px;
}

.calendar .row-heading td
{
   vertical-align: middle;
   padding: 0px 8px 0px 8px;
}

.calendar .prev { text-align: left; }

.calendar .next { text-align: right; }

.calendar .heading
{
   font-family: arial, helvetica, verdana, sans-serif;
   font-size: 1.6rem;
   font-weight: bold;
   text-transform: none;
   text-align: center;
   color: #fff;
}

.calendar th
{
   font-family: arial, helvetica, verdana, sans-serif;
   font-size: 1.2rem;
   font-weight: bold;
   text-transform: none;
   text-align: center;
   color: #fff;
   padding: 2px 10px 2px 0px;
   background-color: #333;
   border-left: solid 1px #333;
   border-right: solid 1px #333;
}

.week-cal th
{
   font-family: arial, helvetica, verdana, sans-serif;
   font-size: 1.4rem;
   font-weight: bold;
   text-transform: none;
   text-align: left;
   color: #fff;
   padding: 8px;
   background-color: #999;
   border: 0px;
}

.week-cal .month, .week-cal .week, .week-cal .day { font-size: 1.2rem; }
.week-cal .month { background-color: #aaa; }
.week-cal .week { background-color: #bbb; }
.week-cal .day { background-color: #ccc; }

.week-cal .row
{
   background-color: #eee;
}

.calendar .row-current
{
   background-color: #ddd;
   height: 75px;
}

.week-cal td
{
   font-family: verdana, arial, helvetica, sans-serif;
   font-size: 1.2rem;
   font-weight: normal;
   text-align: left;
   vertical-align: top;
   color: #000;
}

.calendar .cell, .calendar .cell-current
{
   border-right: solid 1px #999;
   border-bottom: solid 1px #999;
   padding: 8px;
   width: 14%;
   height: 75px;
}

.week-cal .cell
{
   border-right: solid 1px #999;
   border-bottom: solid 1px #999;
   padding: 8px;
}

.calendar .cell-current { background-color: #ccc; }

.calendar .day
{
   font-size: 1.2rem;
   text-align: right;
   margin-bottom: 6px;
}

.week-cal a:link, .week-cal a:visited { color: #900; text-decoration: none; }
.week-cal a:hover, .week-cal a:active { color: #900; text-decoration: underline; }

/*----------------------------------------
   Ecomm
----------------------------------------*/
/* Catalog Layout */
.ecommCatalog
{
   display: table;
   margin: 20px 0px;
}

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

.ecommCatalog .ecommProduct
{
   display: inline-block;
   vertical-align: top;
   zoom: 1;

   box-sizing: border-box;
   overflow: hidden;
   padding: 10px 20px 10px 20px;;
   margin: 0;
   width: 49%;
   /* float: left; */
}

.ecommCatalog .ecommProduct:nth-of-type(odd)
{
   /* margin-right: -5px; */
   padding-left: 0;
   /* border-right: solid 1px #ccc; */
}

.ecommCatalog .ecommProduct:nth-of-type(even)
{
   padding-right: 0;
   border-left: solid 1px #ccc;
}

.ecommCatalog .ecommProduct h3
{
   font-weight: 700;
   line-height: 1.2;
   margin: 5px 0 15px 0;
   padding: 0;
   color: #005aaa;
}

.ecommCatalog .thumbMatte
{
   padding: 0;
   margin: 0 0 10px 0;
   width: 75%;
}

/* Product Layout */
#ecommProduct #largeMatte
{
   border: solid 1px #ddd;
   width: 50%;
   max-width: 50%;
   margin: 0 20px 15px 0;
   float: left;
}

#ecommProduct #largeMatte #largePhoto 
{ 
   width: 100%; 
   height: auto; 
}

#ecommProduct form
{
   clear: left;
   padding-bottom: 40px;
}

/*------------------------------------------------------------
  Progress Bar
------------------------------------------------------------*/
#ecommProgress
{
   list-style: none;
   margin: 0;
   padding: 0;
}

#ecommProgress li
{
   border: solid 0px #999;
   background-image: url(../graphics/ecomm/flow_button.gif);
   background-repeat: no-repeat;
   background-position: 0 0;
   font-family: inherit;
   font-size: inherit;
   line-height: 30px;
   color: #323232;
   padding: 0;
   margin: 0 30px 10px 0;
   width: auto;
   height: 30px;
   float: left;
}

#ecommProgress li.selected { background-image: url(../graphics/ecomm/flow_button_sel.gif); }

#ecommProgress .number
{
   border: solid 0px #000;
   display: block;
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1.0;
   color: #fff !important;
   text-decoration: none !important;
   margin: 0 auto;
   padding: 4px 0 0 10px;
   width: 30px;
   height: 12px;
   float: left;
}

/*------------------------------------------------------------
  Cart
------------------------------------------------------------*/
#ecommCart
{
   border-collapse: collapse;
   border: 0;
   font-family: arial, helvetica, verdana, sans-serif;
   margin: 20px 0px;
   width: 100%;
}

h2 + #ecommCart { margin-top: 5px; }

/* th */
#ecommCart th 
{ 
   background-color: #007277;
   font-size: 1.3rem;
   text-transform: uppercase;
   font-weight: bold;
   color: #fff;
   margin: 0;
   padding: 3px 8px 1px 8px;
}

/* td */
#ecommCart td
{
   border: solid 1px #ddd;
   vertical-align: top;
   font-size: 1.3rem;
   font-weight: normal;
   padding: 4px 8px;
}

#ecommCart .highlightRow td { background-color: #f4f4f4; }

#ecommCart #buttonRow td 
{ 
   border: none;
   text-align: center;
   padding: 10px 0 0 0;
}

/*------------------------------------------------------------
 FORM styles, Link Button Styles
 ------------------------------------------------------------*/
.inputForm { }

.inputForm fieldset
{
   font-family: verdana, arial, helvetica, san-serif;
   font-size: 1.4rem;
   border: 0;
   margin-top: 13px;
   padding: 0;
}

.inputForm label.question
{
   display: block;
   margin-bottom: 4px;
   padding: 0;
}

.inputForm .fs_note p { }

.inputForm input, .inputForm textarea, .inputForm select, .inputForm .fs_note
{
   margin-bottom: 5px;
}

.inputForm input[type=text], 
.inputForm input[type=email], .inputForm input[type=password],
.inputForm input[type=tel], .inputForm input[type=url],
.inputForm select,
.inputForm textarea
{
   border: solid 1px #aaa;
   font-family: verdana, arial, helvetica, "allumi-std", san-serif;
   font-size: 1.3rem;
   line-height: 1.4;
   width: 100%;
}

.inputForm select { width: auto; }

.inputForm textarea 
{ 
   resize: none;
   /* max-width: 90% !important; */
   box-sizing: border-box;
}

.inputForm fieldset.fs_section
{
   padding: 3px 0;
   margin: 7px 0;
}

.inputForm .label { color: #333366; }
.inputForm .required { font-weight: bold; color: #900; }
.inputForm .note { font-size: smaller; line-height: 1.4; color: #444; }
.inputForm p.note { margin-bottom: 6px; }

.inputForm .error
{
   font-weight: bold;
   color: #900;
}

input[aria-invalid="true"] { border: solid 1px #900; }

.inputForm input[type=submit],
.inputForm a.button
{
   background: url('/graphics/bracket-line-small.gif'), url('/graphics/bracket-line-small.gif'),
      url('/graphics/bracket-line-small.gif'), url('/graphics/bracket-line-small.gif');
   background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
   background-position: top left, top right, bottom left, bottom right;
   background-color: #fff;
   border: none;
   border-left: solid 1px #037b7b;
   border-right: solid 1px #037b7b;
   font-size: inherit;
   color: #037b7b;
   margin: 20px 0px 20px 0px;
   padding: 8px 20px;
   width: auto;
}

.inputForm .secondaryButton
{
   background-image: none !important;
   border: none !important;
}

.inputForm a.button { display: inline-block; margin: 10px 0 20px 0; padding: 4px 20px; }

.inputForm input[type=submit]:hover, 
.inputForm input[type=submit]:active,
.inputForm a.button:hover, 
.inputForm a.button:active
{ 
   background-color: #037b7b; 
   color: #fff;
   text-decoration: none;
}

.inputForm .width2Char { max-width: 2rem; }
.inputForm .width10Char { max-width: 10rem; }
.inputForm .width15Char { max-width: 15rem; }
.inputForm .width20Char { max-width: 20rem; }
.inputForm .width30Char { max-width: 30rem; }
.inputForm .width40Char { max-width: 40rem; }
.inputForm .width60Char { max-width: 60rem; }
.inputForm .width80Char { max-width: 80rem; }
.inputForm .width100Char { max-width: 100rem; }

/* Button */
div.button
{
   display: inline-block;
   background: url('/graphics/bracket-line-small.gif'), url('/graphics/bracket-line-small.gif'),
      url('/graphics/bracket-line-small.gif'), url('/graphics/bracket-line-small.gif');
   background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
   background-position: top left, top right, bottom left, bottom right;
   border-left: solid 1px #037b7b;
   border-right: solid 1px #037b7b;
   margin: 10px 0px 20px 0px;
   padding: 12px 7px;
}

div.button a 
{
   background-color: transparent;
   font-size: inherit;
   color: #037b7b;
   text-decoration: none;
   padding: 6px 10px;
}

div.button a:hover, div.button a:active 
{ 
   background-color: #037b7b;
   color: #fff;
   text-decoration: none;
}

/*------------------------------------------------------------
   FOOTER
------------------------------------------------------------*/
footer
{
   clear: both;
   position: relative;

   background: #144171; /* Old browsers */
   background: -moz-linear-gradient(left, #144171 0%, #04579d 50%, #04579d 51%, #144171 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, right top, color-stop(0%,#144171), color-stop(50%,#04579d), color-stop(51%,#04579d), color-stop(100%,#144171)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(left, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* IE10+ */
   background: linear-gradient(to right, #144171 0%,#04579d 50%,#04579d 51%,#144171 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#144171', endColorstr='#144171',GradientType=1 ); /* IE6-9 */

   font-family: "allumi-std", "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
   color: #fff;
   margin: 0 auto;
   width: 100%;
   max-width: 940px;
   height: 124px;
}

footer #usa 
{
   position: absolute;
   top: -35px;
   right: 27px;
   left: auto;
}

footer #footer-social 
{
   position: absolute;
   bottom: 40px;
   left: 27px;
}

footer #footer-social h2 
{
   font-size: 1.4rem;
   line-height: 1.7;
   font-weight: bold;
   word-wrap: normal;
   color: #fff;
   margin: 0;
   padding: 0 0 10px 0;
}

footer #footer-social .icon
{
   display: block;
   background-image: url('/graphics/social-sprite2.png');
   background-repeat: no-repeat;
   margin-right: 10px;
   width: 32px;
   height: 32px;
   float: left;
}

footer #footer-social .icon:hover, footer #footer-social .icon:active { background-color: #104981; }

/*left top*/
footer #footer-social #facebookIcon { background-position: 0px 0px; }
footer #footer-social #twitterIcon { background-position: -40px 0px; }
footer #footer-social #youtubeIcon { background-position: -79px 0px; }
footer #footer-social #linkedinIcon { background-position: -118px 0px; margin-right: 0; }



footer #footer-address
{
   position: absolute;
   bottom: 40px;
   left: 28%;
   font-size: 1.2rem;
   line-height: 1.7;
   margin: 0;
   padding: 0;
}

footer #footer-address span { font-size: 1.2rem; }

footer #nata
{
   position: absolute;
   top: 13px;
   right: 28px;
   width: 164px;
   height: auto;
}

footer #footer-links
{
   position: absolute;
   bottom: 40px;
   right: 28px;
   font-size: 1.2rem;
   line-height: 1.5;
   text-align: right;
   width: 180px;
}

footer #footer-links br { display: inline; }
footer #footer-links #bar1 { display: inline; }

footer a:link, footer a:visited { color: #FFF; text-decoration: none; }
footer a:hover, footer a:active { color: #eee; text-decoration: underline; }

/*------------------------------------------------------------
   TABLET - 550 to 800
------------------------------------------------------------*/
@media only screen and (min-width: 550px) and (max-width: 800px) {


} /* TABLET END */


/*------------------------------------------------------------
   PHONE - 550 to 800
------------------------------------------------------------*/
@media only screen and (max-width: 549px) {

} /* MOBILE END */