/*   
Theme Name: JBN & Associates
Theme URI: http://jbnassociates.com
Description: The official site design for the JBN & Associates website.
Author: Jim Jeffers
Author URI: http://sumocreations.com
Version: 1.0
.
Created by Sumo Creations to be used exclusively by JBN & Associates on http://jbnassociates.com.
.
*/
/*  KEEP OUR CSS CLEAN
    Some guidelines to follow:
    1. Break code down into sections.
    2. Keep your rules alphabetically sorted.
    3. Only put one selector per line for a block of rules that apply to multiple selectors.
    4. Indent your rules, only one rule per line.
        
        example:
        
        element#id,
        element.class {
            rule1: value;
            rule2: value;
            top: value;
        }
*/
@import "reset.css";
@import "navigation.css";
@import "sifr.css";

/*  =GENERAL RULES
    ------------------------------------------------------ */
    body {
        font: normal normal normal 1em/1.5em Helvetica, Arial, sans-serif;
    }
    
    a {
       color: #dd7209;
    }

/*  =SPLASH
    ------------------------------------------------------ */
    div#splash {
        background: #f6f6f6 url(../images/bg_heading_home.png) repeat-x;
    }
    
    .internal div#splash {
         background: #f6f6f6 url(../images/bg_heading_internal.png) repeat-x;
     }
    
    div#splash #decorative_elements {
        display: block;
        height: 350px;
    }
    
    .internal div#splash #decorative_elements {
       height: 200px;
       background: none;
    }
    
    #contact div#splash #decorative_elements {
       background: transparent;
    }
    
    a#skip_navigation {
        color: #ccc;
        font-size: 0.675em;
        position: absolute;
        right: 10px;
        top: 10px;
    }

/*  =SITE_TITLE
    ------------------------------------------------------ */
    div#splash h1#site_title {
        position: absolute;
        left: 50%;
        margin-left: -470px;
        top: 10px;
        z-index: 11;
    }
    
    div#splash h1#site_title a,
    div#splash h1#site_title a span {
        display: block;
        height: 20px;
        padding: 100px 20px;
        position: relative;
        width: 180px;
    }
    
    div#splash h1#site_title a span {
        background: url(../images/logo_jbn_large-trans.png) no-repeat;
        position: absolute;
        top: 0;
        left: 0;
    }
    
    .internal div#splash h1#site_title a,
    .internal div#splash h1#site_title a span {
         padding: 79px 20px;
         width: 138px;
    }
    
    .internal div#splash h1#site_title a span {
       background: url(../images/logo_jbn_medium-trans.png) no-repeat;
    }

/*  =CALL_TO_ACTION
    ------------------------------------------------------ */
    div#splash h2#call_to_action {
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -480px;
        z-index: 10;
    }
    
    div#splash h2#call_to_action a,
    div#splash h2#call_to_action a span {
        display: block;
        height: 250px;
        padding: 100px 40px 0 0;
        position: relative;
        text-align: right;
        width: 920px;
    }
    
    .internal div#splash h2#call_to_action a,
    .internal div#splash h2#call_to_action a span {
       height: 100px;
    }
    
    div#splash h2#call_to_action a span {
        background: url(../images/headline_home-trans.png) no-repeat top right;
        left: 0;
        position: absolute;
        top: 0;
    }
    
    #contact div#splash h2#call_to_action a span {
       background: url(../images/headline_contact-trans.png) no-repeat top right;
    }
    
    #our_team div#splash h2#call_to_action a span {
        background: url(../images/headline_team-trans.png) no-repeat top right;
     }

/* =EMPLOYER_SERVICES
   ------------------------------------------------------ */
    #employer_services div#splash h2#call_to_action a span {
       background: url(../images/headline_employer-trans.png) no-repeat top right;
    }
    
    .wheel_of_methodology {
       position: absolute;
       left: 150px;
       top: 150px;
    }
    
    .methodology,
    .methodology li {
       display: block;
       font-size: 0.95em;
       line-height: 1.25em;
       position: absolute;
       left: 0px;
       top: 0px;
    }
    
    .methodology li {
       width: 150px;
    }
    
    .methodology li strong {
       display: block;
    }
    
    .methodology li.step-one {
       left: 50px;
       top: 330px;
    }
    
    .methodology li.step-two {
       left: 70px;
       top: 390px;
    }
    
    #executive_methodology .methodology li.step-two {
       left: 140px;
    }
    
    .methodology li.step-three {
         left: 420px;
         top: 400px;
     }
     
     .methodology li.step-four {
           left: 470px;
           top: 310px;
       }
    
    .methodology li.step-five {
        left: 435px;
        top: 135px;
    }
     
    .methodology li.step-six {
       left: 135px;
       top: 135px;
    }
    
    #lbContent ul li {
       list-style: square;
       font-size: 0.875em;
       line-height: 1.25em;
       margin: 2px 25px;
    }
    
    .methodology_wheel {
       position: relative;
       min-height: 550px;
    }
    
/* =STAFFING
   ------------------------------------------------------ */
   #staffing_positions div#splash h2#call_to_action a span {
      background: url(../images/headline_staffing-trans.png) no-repeat top right;
   }
   
   #staffing_positions div.section_content {
      min-height: 330px; height: auto !important; height: 330px; /* IE6 min-height trick without hacking. */
   }

/* =EXECUTIVE
   ------------------------------------------------------ */
   #executive_placement div#splash h2#call_to_action a span {
      background: url(../images/headline_executive-trans.png) no-repeat top right;
   }
   

/*  =PRIMARY_CONTENT
    ------------------------------------------------------ */
    div#primary_content {
        background: #f0f0f0 url(../images/bg_grey_section_tile.png) repeat-x;
        position: relative;
    }
    
    div#primary_content div.additional_information {
       position: relative;
    }
    
    div.section_information {
        left: 50%;
        margin-left: -470px;
        position: absolute;
        text-align: right;
        top: 40px;
        width: 278px;
    }
    
    div.section_information h2 {
        font-size: 36px;
        line-height: 1.25em;
    }
    
    div.section_information p {
        font-size: 24px;
        line-height: 1.25em;
        padding-top: 10px;
    }
    
    div.section_information p.sub {
       font-size: 16px;
       line-height: 1.25em;
    }
    
    div.section_information p.contact_information {
      font-size: 18px;
      line-height: 1.25em;
    }
    
    div.section_information ul.contact_information {
      font-size: 14px;
      line-height: 1.25em;
      margin-top: 15px;
    }
    
    div.section_information ul.contact_information strong {
      font-weight: normal;
    }
    
    div.section_content {
        background: url(../images/bg_grey_section_pages_b.png) no-repeat top right;
        margin: 0 auto;
        min-height: 260px; height: auto !important; height: 260px; /* IE6 min-height trick without hacking. */
        padding: 50px 60px 20px 370px;
        width: 530px;   
    }
    
    div#primary_content div.additional_information div.section_content {
        background: url(../images/bg_grey_section.png) no-repeat top right;
     }
    
    div#primary_content div#executive_placement,
    div#primary_content div#job_details {
        float: left;
        width: 244px;
    }
    
    div#primary_content div#job_details {
       width: 160px;
    }
    
    div#primary_content div#job_details dl {
       font-size: 14px;
       line-height: 1.25em;
    }
    
    div#primary_content div#job_details dt {
       font-weight: bold;
    }
    
    div#primary_content div#job_details dd {
       display: block;
       padding-bottom: 10px;
    }
    
    div#primary_content div#staffing_positions,
    div#primary_content div#job_description {
      margin-left: 274px;
    }
    
    div#primary_content div#job_description strong {
       font-size: 14px;
    }
    
    div#primary_content div#job_description p {
       font-size: 12px;
       line-height: 1.25em;
    }
    
    div#primary_content div#job_description li {
       list-style: square outside;
    }
    
    div#primary_content div#job_description ul {
       font-size: 12px;
       line-height: 1.25em;
       margin: 10px 30px;
    }
    
    div#primary_content div#job_description {
       font-size: 12px;
       line-height: 1.25em;
       margin-left: 170px;
    }
    
    div#primary_content div.section_content h3 {
       color: #263978;
       font-size: 1.15em;
    }
    
    div#primary_content div.section_content p {
       font-size: 0.875em;
       line-height: 1.35em;
       margin: 0.5em 0;
    }
    
    ul.action_items li {
       border-top: 1px dotted #ccc;
       display: block;
       font-size: 0.75em;
       font-weight: bold;
       padding: 4px 0;
    }
    
    ul.action_items li a {
       background: url(../images/arrow_right.png) no-repeat center right;
       color: #dd7209;
       display: inline;
       padding: 6px 25px 6px 0;
    }
    
    h4.action_button a {
       background: url(../images/action_item_button.jpg) no-repeat;
       color: #fff;
       font-size: 0.875em;
       display: block;
       padding: 4px 9px;
       height: 26px;
       width: 516px;
    }
    
    #outplacement_services_button {
       clear: both;
    }
    
    #outplacement_services {
       display: none;
    }
    
/* =JOB_OPPORTUNITIES
   ------------------------------------------------------ */
    div#job_opportunities {
        height: 198px;
        left: 50%;
        margin-left: -440px;
        position: absolute;
        top: 560px;
        width: 253px;
        z-index: 10;
    }
    
    div#job_opportunities h3,
    div#job_opportunities h3 span {
        display: block;
        height: 118px;
        left: 0;
        padding: 40px;
        position: absolute;
        top: 0;
        width: 173px;
    }
    
    div#job_opportunities h3 span {
        background: url(../images/bg_sticky_note-trans.png) no-repeat;
    }

    div#job_opportunities ul#job_list {
        font-size: 0.875em;
        left: 40px;
        line-height: 1.25em;
        position: absolute;
        top: 60px;
        width: 185px;
        z-index: 11;
    }
    
    div#job_opportunities ul#job_list li {
        background: rgba(0, 0, 0, .1);
        left: 0;
        padding: 10px;
        position: absolute;
        top: 0;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
    }
    
    div#job_opportunities ul#job_list li:hover {
       background: rgba(0, 0, 0, .2);
    }
    
    div#job_opportunities ul#job_list a {
        color: #263978;
        font-weight: bold;
    }
    
    div#job_opportunities ul#job_list span {
        display: block;
        font-size: 0.75em;
        font-style: italic;
        line-height: 1.25em;
    }
    
    ul.job_opp_actions {
        bottom: 30px;
        font-size: 0.75em;
        font-weight: bold;
        left: 40px;
        line-height: 1em;
        position: absolute;
    }
    
    ul.job_opp_actions li {
        position: absolute;
        bottom: 0;
        left: 0;
    }
    
    ul.job_opp_actions li a {
        color: #263978;
    }
    
    ul.job_opp_actions li#more_jobs {
        width: 150px;
    }
    
    ul.job_opp_actions li#next_job,
    ul.job_opp_actions li#previous_job {
        bottom: 15px;
        display: block;
        left: 150px;
    }
    
    ul.job_opp_actions li#next_job {
        left: 170px;
    }
    
    ul.job_opp_actions li#next_job a,
    ul.job_opp_actions li#next_job a span,
    ul.job_opp_actions li#previous_job a,
    ul.job_opp_actions li#previous_job a span {
        display: block;
        height: 14px;
        left: 0;
        padding: 0 4px 4px 4px;
        position: absolute;
        top: 0;
        width: 9px;
    }
    
    ul.job_opp_actions li#next_job a span {
        background: url(../images/arrow_right.png);
    }
    
    ul.job_opp_actions li#previous_job a span {
        background: url(../images/arrow_left.png);
    }
    
/*  =SECONDARY_CONTENT
    ------------------------------------------------------ */
    div#secondary_content {
        background: #263978 url(../images/bg_blue_section.png) repeat-x;
        color: #fff;
        position: relative;
    }
    
    div#secondary_content div.section_content {
       background-image: none;
       font-size: 1.1em;
       line-height: 1.35em;
       min-height: 180px; height: auto !important; height: 180px; /* IE6 min-height trick without hacking. */
    }
    
    div#secondary_content div.section_content ul.action_items {
       margin-top: 1em;
    }
    
    div#secondary_content div.section_content ul.action_items li {
       background: url(../images/bevel_blue_section.png) repeat-x;
       border-top: none;
       font-size: 0.875em;
       line-height: 1.5em;
       padding: .65em 0 0.5em 0;
    }
    
    div#secondary_content ul.action_items li a {
        background: url(../images/arrow_right_large.png) no-repeat center right;
        padding-right: 40px;
     }

/* =SITEMAP
   ------------------------------------------------------ */
   div#sitemap {
      background: #333 url(../images/bg_darkgrey_section.png) repeat-x;
      border-top: 3px solid #838383;
      position: relative;
   }
   
   div#sitemap div#secondary_navigation {
      padding: 20px 0;
      position: relative;
      margin: 0 auto;
      width: 960px;
   }
   
   div#sitemap ul {
      font-size: 0.75em;
      line-height: 1.35em;
      width: 160px;
   }
   
   div#sitemap ul li.title a {
      color: #fff;
      font-size: 1.1em;
      line-height: 1.25em;
      text-decoration: none;
   }
   
   div#sitemap ul li a {
      color: #dd7209;
   }
   
   ul#staffing_positions_nav,
   ul#employer_services_nav,
   ul#our_team_nav {
      position: absolute;
      top: 20px;
   }
   
   ul#staffing_positions_nav {
      left: 180px;
   }
   
   ul#employer_services_nav {
      left: 360px;
   }
   
   ul#our_team_nav {
      left: 540px;
   }
   
   div#jbn_contact_information {
      color: #fff;
      font-size: 0.75em;
      left: 50%;
      line-height: 1.35em;
      margin-left: 300px;
      position: absolute;
      top: 20px;
      width: 140px;
   }
   
   div#jbn_contact_information a {
      color: #fff;
      display: block;
      font-weight: bold;
   }
   
   div#jbn_contact_information .org {
      display: none;
   }
   
   div#jbn_contact_information img {
      left: -70px;
      position: absolute;
      top: 0;
   }
   
   div#jbn_contact_information div {
      display: inline;
   }
   
   div#jbn_contact_information .line,
   div#jbn_contact_information .country-name {
      display: block;
   }
   
   div#jbn_contact_information .country-name {
      margin-bottom: 10px;
   }
   
   div#copyright {
      border-top: 1px solid #515151;
      color: #515151;
      font-size: 0.875em;
      margin-top: 25px;
      padding: 6px 0;
      width: 680px;
   }
   
/* =FORM
   ------------------------------------------------------ */
   form ul.form li label {
      color: #fff;
      display: block;
      font-size: 13px;
   }
   
   form fieldset {
      border: 0;
      padding: 10px 0;
   }
   
   form fieldset legend {
      color: #fff;
      font-size: 24px;
      line-height: 1em;
   }
   
   form p {
      font-size: 13px;
      line-height: 1.25em;
      padding: 0 0 10px 0;
   }
   
   form span.example {
      color: #5d6c9b;
      font-size: 12px;
      font-style: italic;
   }
   form ul.form li input.text,
   form ul.form li input.password,
   form ul.form li textarea {
      background: #5d6c9b;
      background: rgba(255,255,255,.25);
      border: none;
      color: #f90;
      display: block;
      font-weight: bold;
      padding: 6px 4px;
      width: 300px;
   }
   
   form ul.form li {
      padding-bottom: 10px;
   }
   
   form ul.form li ul.radio_list {
      position: relative;
   }
   
   form ul.form li ul.radio_list li {
      padding-bottom: 0;
      position: relative;
   }
   
   form ul.form li ul.radio_list li label {
      font-weight: bold;
      padding-left: 30px;
   }
   
   form ul.form li ul.radio_list li input {
      position: absolute;
      left: 0;
      top: 2px;
      width: 14px !important;
   }
   
   li.contact_name input,
   li.company_name input  {
      width: 260px !important;
   }
   
   li.phone_number input {
      width: 190px !important;
   }
   
   li.short input {
      width: 120px !important;
   }
   
   li.extra_short input {
      width: 80px !important;
   }
   
   li.medium input {
      width: 190px !important;
   }
   
   li.full input {
      width: 390px !important;
   }
   
   li.disposition textarea {
      height: 80px;
   }
   
   input.submit {
      background: #dd7209;
      border: none;
      color: #000;
      display: block;
      font-weight: bold;
      padding: 8px 4px;
      width: 360px;
   }
   
   .fieldWithErrors {
      display: block;
      margin: 0;
      padding: 0;
   }
   
   .fieldWithErrors label {
      color: #f90 !important;
   }
   
   .fieldWithErrors input.text {
      background: #f90 !important;
      color: #000 !important;
   }
   
   #errorExplanation {
      border-bottom: 1px dotted #5D6C9B;
      color: #f90;
      margin-bottom: 20px;
   }
   
   #errorExplanation ul {
      margin: 5px 20px 20px 20px;
   }
   
   #errorExplanation ul li {
      color: #5D6C9B;
      font-size: 12px;
      line-height: 1.25em;
      list-style: square outside;
   }

/* =TEAM_MEMBERS
   ------------------------------------------------------ */
   ul#team_members {
      overflow: auto;
      padding-bottom: 20px;
   }
   
   ul#team_members li,
   ul#team_members li a,
   ul#team_members li a img {
      display: block;
   }
   
   ul#team_members li {
      float: left;
      position: relative;
      padding: 0 8px 8px 0;
   }
   
   ul#team_members li a {
      border: 3px solid #ccc;
   }
   
   ul#team_members li span.member_name {
      background: #000;
      color: #fff;
      display: block;
      font-size: 0.65em;
      left: 15px;
      line-height: 1.25em;
      position: absolute;
      padding: 2px 4px;
      text-align: center;
      top: 84px;
      width: 55px;
      z-index: 999;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
   }
   
   ul#team_members li.large span.member_name {
      left: 40px;
      top: 243px;
   }
   
/* =CHARITIES
   ------------------------------------------------------ */
   ul#charities h3 a {
      color: #000;
      text-decoration: none;
   }
   
   ul#charities li {
      display: block;
      min-height: 100px; height: auto !important; height: 100px;
      padding: 0 0 16px 150px;
      position: relative;
      
   }
   
   ul#charities li#phoenix_suns_charity {
      min-height: 150px;
   }
   
   ul#charities li .logo {
      background: #999;
      display: block;
      left: 0;
      position: absolute;
      top: 0;
   }

/* =JOB_LISTINGS
   ------------------------------------------------------ */
   ul#positions {
      font-size: 0.75em;
   }
   
   ul#positions li {
      border-bottom: 1px dotted #ddd;
      padding: 3px 0;
      position: relative;
   }
   
   ul#positions a {
      font-weight: bold;
   }
   
   ul#positions span.job_location,
   ul#positions span.job_age {
      display: block;
      left: 250px;
      position: absolute;
      top: 3px;
   }
   
   ul#positions span.job_age {
      left: 400px;
   }

/* =OUTPLACEMENT
   ------------------------------------------------------ */
   .outplacement_package {
      float: left;
      font-size: 0.75em;
      line-height: 1.25em;
      width: 180px;
   }
   
   .outplacement_package h4 {
      font-size: 0.875em !important;
      line-height: 1.25em;
   }
   
   div#lbContent p#outplacement_description {
      border-bottom: 1px solid #ccc;
      padding-bottom: 15px;
      margin-bottom: 10px;
      width: 500px;
   }
   
/* =LIGHTBOX
   ------------------------------------------------------ */
   div#lightbox_fade {
      background: #000;
      height: 100%;
      left: 0;
      position: fixed;
      top: 0;
      width: 100%;
      z-index:1000;
   }
   
   div#lightbox {
      background: url(../images/notes_background.png) no-repeat;
      height: 500px;
      left: 50%;
      margin: -250px 0 0 -314px;
      position: fixed;
      top: 50%;
      width: 628px;
      z-index: 1001;
   }
   
   a#lbClose {
      background: url(../images/close_icon.png) no-repeat top right;
      color: #333;
      display: block;
      font-size: 1.5em;
      padding: 10px 35px 10px 0;
      position: absolute;
      right: 15px;
      text-align: right;
      text-transform: lowercase;
      top: 20px;
      z-index: 1002;
   }
   
   div#lbContent {
      padding: 40px 20px 20px 50px;
   }
   
   div#lbContent h4 {
      color: #263978;
      font-size: 1.5em;
      line-height: 1em;
      margin-bottom: 0.5em;
   }
   
   div#lbContent p {
      font-size: 0.875em;
      line-height: 1.25em;
      padding: 0.25em;
      width: 300px;
   }
   
   div#lbContent img.portrait {
      float: right;
      margin-right: 20px;
   }
   
   div#lbContent h5.job_title {
      position: absolute;
      font-size: 0.875em;
      line-height: 1.1em;
      right: 40px;
      top: 345px;
      width: 200px;
   }