/* Website for PRS Tech */
/* Summer 2009 */
/* Site design and development by Red Letter Design, www.RedLetterDesign.net */


/* Hacks: 
for min-height in IE6: add height: xxpx !important; height: xxpx;

the content div is floated right so that floats internal to that div can be cleared on the left without interacting with the sidebar.
In order for the background to appear, a clearing div is placed at the end of the content.
*/

/* Reset browser default styles to insure consistency across various browsers */
html, body, div, 
applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dd, dl, dt, li, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; font-size: 100%; line-height: 1; text-align: left; vertical-align: baseline; }
a img, :link img, :visited img { border: 0; }
ol, ul { list-style: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; }

/* Helpful fixes */
/* -- get rid of Firefox link boxes */
a { outline: none; }
/* -- forces vertical scrollbars in FF to avoid horizontal shift on short pages */
:root, html { overflow-y:scroll; }

/* Layout Structure */
body              { margin: 0; padding: 0 0 40px 0; background: #576d82 url(../images/background_tile.jpg) center top repeat; }
div#wrapper0      { margin: 0; padding: 0; background: url(../images/background_top.jpg) repeat-x center top; }
div#wrapper1      { margin: 0 auto; padding: 0; width: 1040px; position: relative; }
div#wrapper2      { margin: 0; padding: 0; background: url(../images/content_middle.jpg) repeat-y center top; }
div#wrapper3      { margin: 0; padding: 0; background: url(../images/content_top.jpg) center top no-repeat; position: relative; }
div#topbar        { margin: 0; padding: 0 0 0 55px; height: 30px; }
div#searchbox     { position: absolute; top:  0  ; left: 710px; width: 300px; height: 30px; }
div#tagline       { position: absolute; top: 53px; left: 380px; width: 600px; height: 75px; }
div#sidebar       { margin: 0; padding: 120px 0 0 50px; width: 205px; position: relative; float: left; }
/* Note: change top padding on div#sidebar to 140px when anniversary badge is removed */
div#sideBadges    { margin-top: 20px; }
div#content       { margin: 0 0 0 285px !important; margin-left: 282px; padding: 128px 0 0 0; width: 695px; min-height: 950px; 
                    height: auto !important; height: 950px; }
div#footer        { position: relative; clear: both; padding: 25px 40px 0 45px; min-height: 30px; height: auto !important; height: 30px;
                    background: url(../images/content_footer.jpg) center top no-repeat; }
div#lowerSideInfo { position: absolute; top: -153px; left: 50px; width: 205px; }
div#printHeader   { display: none; }
div#logolink      { position: absolute; top: 40px; left: 10px; z-index: 10; }

/* Layout classes */
div.serviceGroup    { padding-left: 20px; }

/* Columns */
div.columnset   { clear: left; margin: 0; padding: 0; }
div.firstcol    { margin-left: 0px !important; }
/* 3 columns */
div.col3_single { width: 225px; margin: 0 0 0 10px; float: left; }
div.col3_double { width: 460px; margin: 0 0 0 10px; float: left; }
/* 2 columns */
div.col2_single { width: 330px; margin: 0 0 0 35px; float: left; }
                
/* Typography */
/* -- fonts */
body, input, textarea   { font-family: "Trebuchet MS", Tahoma, Geneva, sans-serif; }
.subhead, #tagline p    { font-family: Georgia, "Times New Roman", Times, serif; }
/* -- for main content, rhythm is 18px */
body, input, textarea { color: #444444; font-size: 12px; line-height: 1.0; }
h1              { font-size: 24px; line-height: 24px; margin: 0; padding: 12px 0   12px 0; font-weight: normal; color: #e16a1e;  }
h2              { font-size: 18px; line-height: 24px; margin: 0; padding: 12px 0    0   0; font-weight: normal; color: #2656b9; }
h3              { font-size: 16px; line-height: 18px; margin: 0; padding: 12px 0    6px 0; font-weight: normal; color: #000000;  }
p               { font-size: 13px; line-height: 18px; margin: 0; padding:  6px 0   12px 0; }
li              { font-size: 13px; line-height: 18px; margin: 0; padding:  0; }
li li           { font-size: 11px; }
strong          { font-weight: bold; color: #000000;}
em              { font-style: italic; color: #000000; }
blockquote { margin: 9px 0px; padding: 0 9px; border-left: 8px solid #b0bad3; background-color: #EFF5FF; }
    blockquote p { padding: 9px 0 9px 0; font-style: italic;}
    blockquote p.quoteSource { font-style: normal; font-size: 13px;  }
a { color: #2656b9; }
    a:link      { color: #2656b9; }
    a:visited   { color: #2656b9; }
    a:hover     { color: #e16a1e; }
    a:active    { color: #e16a1e; }
ul { list-style-position: outside; list-style-type: square; margin: 0 0 0 1.5em; padding: 6px 0 12px 0; }
ol { list-style-position: outside; list-style-type: decimal; margin: 0 0 0 1.5em; padding: 6px 0 12px 0; }
ul ul, 
ol ul { list-style-type: disc; margin: 0 0 0 2em; padding: 0; list-style-position: outside; }
ol ol, 
ul ol { list-style-type: lower-alpha; margin: 0 0 0 2em; padding: 0 0 0 0; list-style-position: outside; }
dl { margin: 0; padding: 6px 0 12px 0; }
dt { font-size: 13px; line-height: 18px; margin: 0; padding:  0; font-weight: bold; }
dd { font-size: 13px; line-height: 18px; margin: 0 0 0 1.5em; padding:  0; }

/* Tables */
table  { margin: 0 0 17px 0; padding: 0; background-color: #eff5ff; border: 1px solid #b0bad3; border-width: 1px 1px 0 1px; }
td, th { padding: 3px; margin: 0; font-size: 12px; line-height: 17px; text-align: left; font-weight: normal; }
th     { vertical-align: middle; background-color: #b0bad3; border-bottom: 1px solid #8390af; font-weight: bold; }
td     { vertical-align: middle; background-color: #eff5ff; border-bottom: 1px solid #b0bad3;}

/* Graphics */
/* note on image sizes: images that align to the top of a para should by (18*n)+11 px high. Those that are internal to a para should be (18*n)+7 px tall. */
img.photoRightTop { border: 1px solid #695B4A; padding: 0; margin:  2px  0    0px 18px; float: right; }
img.photoLeftTop  { border: 1px solid #695B4A; padding: 0; margin:  2px 18px  0px  0;   float: left; }
img.photoRight    { border: 1px solid #695B4A; padding: 0; margin:  4px  0    0px 18px; float: right; }
img.photoLeft     { border: 1px solid #695B4A; padding: 0; margin:  4px 18px  0px  0;   float: left; }
img.photoFull     { border: 1px solid #695B4A; padding: 0; margin:  9px  0    9px  0; }
img.photoFullTop  { border: 1px solid #695B4A; padding: 0; margin:  0    0   18px  0; }
img.graphicRight  { border: none;              padding: 0; margin: 12px  0    6px 18px; float: right; }
img.graphicLeft   { border: none;              padding: 0; margin: 12px 18px  6px  0;   float: left; }
    
/* Forms */
form                { border: none; padding: 0; margin: 9px 0; border: 1px solid #b0bad3; background-color: #eff5ff; }
textarea            { font-size: 13px; width: 98%; }
input.formInput     { font-size: 13px;  width: 98%; }
input.button        { font-size: 13px; line-height: 18px; }
div.checkInput      { padding-right: 20px; float: left;}
label               { font-size: 13px; line-height: 18px; font-weight: bold;}
label.selectLabel   { font-weight: normal;}
form p              { padding: 0; }
div.formSection     { margin: 0; padding: 9px 9px; min-height: 18px; height: auto !important; height: 18px; clear: left; }
div#honeypot        { display: none; }

/* Typography Classes */
.formNote           { font-size: 11px; }
.formError          { font-size: 11px; font-weight: bold; color: #e16a1e; }
.retMessage         { font-weight: bold; color: #2656b9; }
.warning            { font-weight: bold; color: #e16a1e; }
.floatclear         { clear: both; }
.note               { font-style: italic; font-size: 11px; }
.smalltext          { font-size: 10px; }
.mediumtext         { font-size: 13px; }
.subhead            { font-size: 18px; line-height: 18px; margin: 0; padding: 0 0 18px 0; font-style: italic; }
.immediateSubhead   { margin-top: 0; padding-top: 0; }

/* Float Containers -- to handle floated elements */
div.floatContainer { width: 100%; float: left; }
div.clearingDiv   { clear: both; }

/* Primary Navigation */
div#nav ul { list-style: none; list-style-position: outside; text-indent: 0; margin: 0; padding: 0; }
    div#nav ul ul { padding: 9px 0 9px 0; }
    div#nav ul li { margin: 0; padding: 0px 0 18px 20px; font-size: 18px; line-height: 1.0; color: #2656b9; 
                    background: url(../images/dot_off.jpg) top left no-repeat;}
        div#nav ul li li {  margin: 0; padding: 0 0 0 10px; font-size: 14px; line-height: 18px; color: #2656b9; 
                            background-image: none; border-left: 1px solid #e16a1e; height: auto !important; height: 18px; }
    div#nav ul li.current_page,
    div#nav ul li.parent_page,
    div#nav ul li.ancestor_page { font-weight: bold; background-image: url(../images/dot_on.jpg); }
    div#nav ul li.parent_page li.current_page { font-weight: bold; background-image: none; }
    div#nav ul li.parent_page li { font-weight: normal; background-image: none; }
    
    div#nav ul li .related_text { display: block; padding: 6px 0 9px 0; font-size: 12px; line-height: 14px; 
                                  text-align: left; color: #222222; }

        div#nav ul li a { color: #2656b9; text-decoration: none; }
            div#nav ul li a:hover { color:#e16a1e; text-decoration: underline; }
            div#nav ul li.current_page a:hover { color: #2656b9; text-decoration: none; }
            div#nav ul li li.current_page a { color: #e16a1e; }
            div#nav ul li li.current_page a:hover { color: #e16a1e; }

/* Top bar */
div#topbar p { color: white; font-size: 12px; line-height: 18px; padding: 6px 0; }
    div#topbar p a { color: white; text-decoration: none; line-height: 18px;}
        div#topbar a:hover { color: white; text-decoration: underline; }
div#topbar div#searchbox p { padding: 6px 200px 6px 0; text-align: right; }
div#topbar div#searchbox form { background-color: transparent; border: none; margin: 0; padding: 0; }
div#topbar div#searchbox label { font-weight: normal; }
div#topbar div#searchbox input { float: right; width: 150px; height: 14px; margin: 8px 18px 8px 0; font-size: 12px; color: #2656b9; border: 0px; background-color: white;}

/* Tagline */
div#tagline h1 { color: white; text-align: right; font-size: 18px; line-height: 18px; padding: 0 0 6px 0; }
div#tagline p  { color: white; text-align: right; font-size: 14px; line-height: 18px; font-style: italic; }

/* Footer content */
div#footer p { font-size: 10px; line-height: 18px; color: #cccccc; font-weight: normal; margin: 0; padding: 0 3px 0 0; text-align: right;}
    div#footer p a, 
    div#footer p a:link, 
    div#footer p a:visited  { color: #cccccc; text-decoration: none; }
    div#footer p a:hover        { color: #fff; text-decoration: underline; }
    div#footer p.copyright  { padding-right: 6px; } /* to match the padding on the nav below it */
    
/* Lower Side Info content */
div#footer div#lowerSideInfo p         { color: #333333; }
div#footer div#lowerSideInfo p.name    { display: none; } /* an image provides the name in the screen version */
div#footer div#lowerSideInfo p.address { font-size: 11px; line-height: 18px; text-align: left; padding: 0 0 12px 68px; }
div#footer div#lowerSideInfo p.phone   { font-size: 30px; line-height: 36px; text-align: center; padding: 0; font-weight: bold;}

/* Lower Navigation (in footer) */
p#lowerNavigation span span { margin: 0; padding: 0 6px 0 6px; border-left: 1px solid #cccccc; }
    p#lowerNavigation span span:first-child { border: none; }

/* NTR Global link box */
div#NTRglobal { width: 149px; margin: 0; padding: 6px 29px 15px 27px; background: url(../images/help.jpg) top left no-repeat; text-align: center;}
div#NTRglobal a { line-height: 20px;}

/* Phone List */
dl.phoneList dt { width: 150px; text-align: right; float: left; clear: left; }
dl.phoneList dd { float: left; }

/* Front image display */
div.frontDisplayBlock       { margin: 0 0 20px 0; padding: 0; height: 434px; width: 695px; overflow: hidden;}
div.frontDisplayBlock img   { margin: 0; padding: 0;}
div.frontDisplayText        { position: absolute; width: 200px; top: 166px; left: 760px;}
div.frontDisplayText h1     { font-size: 18px; }
div.frontDisplayText h2     { font-size: 16px; }

/* Resumes */
p.viewResume    {  }
p.closeResume   { text-align: right; }
.fauxCursor     { cursor: pointer; color: #2656b9; text-decoration: underline; }
