ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input
{ margin: 0; padding: 0; }
a img,:link img,:visited img { border: none; }

/**
 * link styles and overrides
 */
ul#menu a:hover, ul#servicesList a:hover, div#partnerLinks a:hover,
div#mainImages a:hover, div#testimonialsWidget a:hover, div.pagination a:hover,
div#minimap a:hover, div#mainServicesList li a:hover, div#mainServicesList div a:hover,
a {
    text-decoration: none;
}

div#partnerLinks a, div#testimonialsWidget a, div.pagination a,
div#mainServicesList div a,
a:hover {
    text-decoration: underline;
}

body, td {
    margin: 0;
    padding: 0;
    font-family: Verdana, Arial, helvetica, sans-serif;
    font-size: 12px;
}

body {
    background-image: url(/images/new/images/bgshadow_bottom.png);
    background-repeat: repeat-x;
    background-position: bottom;
    background-color: #fff;
}


h2, h3, h4 {
    font-weight: normal;
}

h2 {
    font-size: 1.5em;
}

/**
 * generic form styles
 */
div.mainText form, div#jobSearch form, div#leftCol form {
    display: block;
    position: relative;
    border-width: 1px;
    border-style: solid;
}

div.mainText form {
    margin-left: 20px;
    padding: 18px 20px 0px;
}

div.mainText form p label {
    float: left;
}

div.mainText form p input,
div#leftCol form p input,
div#jobSearch form select, div#jobSearch form input,
div#loginForm input, form#apply table input {
    height: 14px;
    padding: 5px;
    border: none;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
}

div.mainText form p, div#bigLeftCol div.mainText form p {
    width: 100%;
    margin-bottom: 40px;
    clear: both;
}

div.mainText form p input {
    float: right;
    width: 240px;
}
div.mainText form p select {
    float: right;
}

div#jobSearch p.submitSearch, div#bigLeftCol div.mainText form p.submit, div.mainText form p.submit, form#apply p.submit, div#leftCol form p.submit {
    position: relative;
    width: 112px;
    margin: 0;
    padding: 0;
}

div#bigLeftCol div.mainText form p.submit, div.mainText form p.submit, 
form#apply p.submit {
    top: 0px;
    left: 80%;
}
form#apply p.submit {
    left: 85%;
}

div#jobSearch p.submitSearch input, div.mainText form p.submit input, 
form#apply p.submit input, div#leftCol p.submit input {
    width: 112px;
    height: 30px;
    background-image: url(/images/new/images/jobsearch_button.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    border: none;
    cursor: pointer;
}

div.mainText form span.tooltip {
    display: block;
    float: left;
    clear: left;
    width: 400px;
    font-size: 0.8em;
}

form#apply {
    width: 860px;
}

form#apply input {
    width: auto;
}

form#apply p {
    margin-bottom: 20px;
}

form#apply p.pensao {
    margin-bottom: 40px;
}

form#apply p.license{
    padding: 0;
}
form#apply p.license input, form#apply p.license label{
    float: none;
    margin: 0;
}

form#apply p span.postcode {
    float: right;
}
form#apply p span.postcode input {
    float: none;
}

form#apply p.license span.right {
    margin-left: 100px;
}

form#apply input.noBorder {
    border: none;
}

form#apply p.checkbox {
    overflow: hidden;
}
form#apply p.checkbox label {
    width: 80%;
}

form#apply p.checkbox input {
    float: right;
}

form#apply p.file input {
    height: 24px;
}

form#apply table {
    width: 100%;
    margin: 10px 0px 20px;
}

form#apply table th, form#apply table td {
    padding-bottom: 10px;
}

form#apply table input {
    width: 100px;
}

form#apply table input.lastplace {
    width: 360px;
}

div.funcoes, div.funcoes h3 {
    margin-bottom: 20px;
}
div.funcoes input {
    margin: 0px 45px 10px 10px;
}

table#listemp {
    margin: 6px 20px;
    border-spacing: 0;
    border-collapse: collapse;
}

table#listemp th {
    font-weight: bold;
}

table#listemp th, table#listemp td {
    padding: 6px 15px;
    font-size: 1.0em;
}

table#listemp td {
    border-top-width: 1px;
    border-top-style: solid;
}

p.printlink {
    text-align: center;
}

span.formError {
    display: block;
    font-weight: bold;
    color: #C60707;
}

div.mainText p.requiredFields {
    font-weight: bold;
    padding-left: 10px;
}


/**
 * header and logo
 */
div#loginForm, div#userInfo {
    position: relative;
    z-index: 2;
    float: right;
    margin-top: -45px;
}

div#loginForm form, div#loginForm input {
    display: inline;
}

div#loginForm input {
    width: 98px;
}

div#loginForm input.submit {
    background: url(/images/new/images/login_button.png);
    width: 77px;
    height: 32px;
    border: none;
    padding: 0px;
    margin: 0px;
    margin-bottom: -4px;
}

div#loginForm div { padding-top: 7px; }

div#loginForm span.register {
    padding-right: 3px;
    margin-right: 1px;
    border-right-width: 1px;
    border-right-style: solid;
}

div#languageMenu {
    position: relative;
    width: 150px;
    height: 30px;
    top: 5px;
    left: 840px;
    z-index: 2;
    font-size: 8px;
}

div#languageMenu h2 {
    display: inline;
    margin-right: 4px;
}

/**
 * main container and logo
 */
div#outerContainer {
    background-image: url(/images/new/images/bgshadow_top.png);
    background-repeat: repeat-x;
    background-position: top;
    position: relative;
    width: 100%;
    margin: 0 0;
    z-index: 0;
}

div#container {
    margin: 0 auto;
    width: 960px;
    z-index: 0;
    position: relative;
    overflow: hidden;
}

div#bgTop, div#bgMiddle {
    position: absolute;
    background-repeat: no-repeat;
    z-index: 1;
}

div#bgTop {
    background-image: url(/images/new/images/bg_top_right.png);
    top: 0;
    right: 0;
    width: 675px;
    height: 149px;
}

div#bgMiddle {
    background-image: url(/images/new/images/bg_middle_left.png);
    top: 524px;
    left: 0;
    width: 792px;
    height: 252px;
}

div#logo {
    height: 195px;
    z-index: 2;
}
div#logo img {
    position: relative;
    top: 18px;
    left: 0px;
    display: block;
}

/**
 * menu
 */
ul#menu {
    position: relative;
    top: -45px;
    height: 49px;
    border-top-style: solid;
    border-top-width: 3px;
}

ul#menu li {
    width: 159px;
    height: 49px;
    list-style: none;
    float: left;
    display: block;
    margin-right: 1px;
}

ul#menu li.contacts {
    width: 160px;
    margin-right: 0px;
}

ul#menu a {
    display: block;
    width: 159px;
    height: 39px;
    padding-top: 15px;
    text-align: center;
    text-transform: uppercase;
    font-size: 14px;
    font-family: Tahoma, Arial, sans-serif;
    text-shadow: 1px 1px 1px #000;
    background-image: url(/images/new/images/menu_bg.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}

ul#menu a:hover {
    background-image: url(/images/new/images/over.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}

ul#servicesList {
    display: none;
    position: absolute;
    margin: 0;
    margin-top: -4px;
    padding: 5px 0px;
    z-index: 6;
    top: auto;
    left: auto;
}

ul#servicesList li {
    width: 155px;
    height: 25px;
    padding: 6px 5px 0px;
    margin: 0;
    list-style: none;
    float: none;
    border: none;
    background-image: none;
}

ul#servicesList a {
    width: 160px;
    height: 25px;
    padding: 0;
    margin: 0;
    text-transform: none;
    text-shadow: none;
    font-weight: normal;
    font-size: 12px;
}
ul#servicesList a, ul#servicesList a:hover {
    background: none;
}


/**
 * main content, footer and middle top section
 */
div#mainContent {
    position: relative;
    overflow: hidden;
    width: 960px;
    top: -25px;
    z-index: 3;
    min-height: 350px;
}

ul#bottomMenu {
    position: relative;
    top: -10px;
    width: 960px;
    height: 40px;
    margin: 0 auto;
    list-style: none;
    background-image: url(/images/new/images/bottom_menu_bg.png);
    background-position: 0 0;
    background-repeat: repeat-x;
}

ul#bottomMenu li {
    float: left;
    width: 160px;
    padding-top: 10px;
    text-align: center;
    font-size: 14px;
}

div#footer {
    position: relative;
    top: -5px;
    width: 960px;
    margin: 0 auto;
    font-size: 1.1em;
}

span#footerLeft {
    float: left;
}

span#footerRight {
    float: right;
}

div#partnerLinks {
    visibility: hidden;
    clear: both;
    text-align: center;
    font-size: 1.0em;
    padding-top: 15px;
}

div#partnerLinks a {
    padding: 0px 4px;
}

div#mainImages, div#mainMiddleImage, div#mainImagesCont {
    position: absolute;
    top: 0;
    width: 960px;
    height: 311px;
}

/*
div#mainMiddleImage {
    opacity: 0;
    filter: alpha(opacity: 0);
}
    */

div#mainImages {
    position: relative;
    top: -45px;
    z-index: 3;
    background-color: #BAC656;
    font-family: Tahoma, Arial, sans-serif;
}

div#mainImagesCont {
    z-index: 5;
}

div#mainMiddleImage {
    z-index: 4;
    position: relative;
}
div#mainMiddleImage img {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity: 0);
} 

div#mainImages h2 {
    position: relative;
    width: 375px;
    top: 40px;
    left: 60px;
    font-size: 22px;
    line-height: 1.4em;
    text-shadow: 1px 1px 1px #666;
}

div#mainImages p {
    position: relative;
    width: 360px;
    top: 50px;
    left: 40px;
    font-size: 12px;
    text-shadow: 1px 1px 1px #ccc;
    font-family: Arial, sans-serif;
}

div#mainImages div.candidates, div#mainImages div.clients {
    position: absolute;
    top: 216px;
    width: 158px;
    height: 45px;
}

div#mainImages div.clients {
    left: 62px;
    background-image: url(/images/new/images/button_empresas_bg.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}
div#mainImages div.candidates {
    left: 251px;
    background-image: url(/images/new/images/button_candidatos_bg.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}

div#mainImages a {
    display: block;
    width: 158px;
    padding-top: 8px;
    text-transform: uppercase;
    text-align: center;
    font-weight: normal;
    font-size: 20px;
    text-shadow: 1px 1px 1px #666;
}

/**
 * BIG LEFT COLUMN / small right column layout
 */
div#bigLeftCol {
    float: left;
    width: 620px;
    padding: 0px;
    background: transparent;
    line-height: 20px;
}

div#bigLeftCol h2 {
    margin: 0px 0 15px;
}

div#smallRightCol {
    float: right;
    width: 295px;
}

div.contacts h2 {
    margin-top: 10px;
}

/**
 * small left column / BIG RIGHT COLUMN layout
 */
div#smallLeftCol {
    float: left;
    width: 330px;
}

div#bigRightCol {
    float: right;
    width: 614px;
}

/**
 * equal size columns
 */
div#leftCol, div#rightCol{
    width: 472px;
}

div#leftCol{
    float: left;
}

div#rightCol{
    float: right;
}

/**
 * main page and generic text container
 */
div.mainText {
    width: 100%;
    padding: 10px;
    font-size: 1.0em;
}

div.mainText p {
    width: 100%;
    padding-bottom: 25px;
    text-align: justify;
}

div.mainText p.right {
    margin-top: 30px;
    text-align: right;
}

div.mainText ul, div.mainText ol { padding-left: 30px; }
div.mainText ol { padding-top: 20px; }

/**
 * main pages right bar widgets
 */
div#minimap {
    width: 100%;
    height: 160px;
    position: relative;
    background-image: url(/images/new/images/map_bg.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}

div#minimap h2, div#minimap p {
    position: relative;
    left: 20px;
}
div#minimap h2 {
    top: 10px;
}
div#minimap p {
    top: 55px;
    font-size: 12px;
}

div#minimap div, div#minimap a {
    position: absolute;
}

div#minimap a {
    display: block;
    width: 15px;
    height: 15px;
    z-index: 6;
}

div#minimap a#coimbraMarker { top: 53px; left: 226px; }
div#minimap a#lisboaMarker { top: 95px; left: 220px; }
div#minimap a#portimaoMarker { top: 140px; left: 231px; }
div#minimap a#quarteiraMarker { top: 140px; left: 247px; }

div#minimap div {
    font-family: Arial, helvetica, sans-serif;
    width: 97px;
    height: 19px;
    background-image: url(/images/ober.gif);
    background-repeat: no-repeat;
    background-position: 0 0;
    font-size: 10px;
    padding-left: 5px;
    padding-top: 4px;
    opacity: 0;
    filter: alpha(opacity: 0);
    z-index: 4;
}

div#minimap div#coimbraInfo { top: 52px; left: 130px; }
div#minimap div#lisboaInfo { top: 94px; left: 120px; }
div#minimap div#portimaoInfo { top: 138px; left: 136px; }
div#minimap div#quarteiraInfo { top: 138px; left: 147px; }

div#featuredJobs {
    width: 100%;
    height: 160px;
    padding-top: 40px;
    margin-top: 20px;
    background-image: url(/images/new/images/featured_jobs_background.png);
    background-position: bottom center;
    background-repeat: repeat-x;
}
div#featuredJobs, div#featuredJobs a{
    z-index: 10;
}

div#featuredJobs h2, div.latestJobOffers h2 {
    position: absolute;
    width: 280px;
    margin-left: 20px;
    margin-top: -40px;
    height: 76px;
    background-image: url(/images/new/images/featured_jobs_icon.png);
    background-position: top right;
    background-repeat: no-repeat;
    z-index: 9;
}

div#featuredJobs div {
    padding-left: 20px;
    font-size: 12px;
    z-index: 10;
    position: relative;
}

div#featuredJobs div.position { padding-bottom: 25px; }
div#testimonialsWidget {
    margin-top: 15px;
    padding-left: 20px;
}
div#testimonialsWidget h2 { margin: 10px 0px; }
div#testimonialsWidget p.user {
    font-size: 12px;
    margin-bottom: 7px;
}

div#testimonialsWidget a {
    float: right;
    margin: 10px 0px 0px;
}
div#testimonialsWidget p.content a {
    float: none;
    margin: 0;
}


/**
 * candidates
 */
div#jobSearch {
    width: 297px;
    height: 180px;
    margin-top: -22px;
    z-index: 5;
    background-image: url(/images/new/images/jobsearch_icon.png);
    background-repeat: no-repeat;
    background-position: 185px top;
}

div#jobSearch form, div#leftCol form {
    top: 59px;
    width: 261px;
    height: 91px;
    padding: 18px 15px;
}

div#jobSearch p {
    height: 30px;
}

div#jobSearch form select, div#jobSearch form input , div#leftCol form input {
    float: left;
    width: 240px;
}

div#jobSearch form select {
    width: 252px;
    padding: 0px 0px 0px 5px;
    height: 24px;
}

div#jobSearch p.submitSearch {
    top: 19px;
    left: 165px;
}

div#applying {
    position: relative;
    width: 157px;
    height: 135px;
    margin-top: 60px;
    background-image: url(/images/new/images/candidate_register_icon.png);
    background-repeat: no-repeat;
    background-position: right top;
    padding-right: 140px;
}

div#applying h2, div#applying p {
    margin-bottom: 15px;
}

div#smallLeftCol p.cv {
    height: 44px;
    padding-left: 40px;
    background-image: url(/images/new/images/cv_icon.png);
    background-repeat: no-repeat;
    background-position: left top;
}
div#smallLeftCol p.cv a {
    display: block;
    padding-top: 15px;
}

div.latestJobOffers h2 {
    width: 590px;
    margin-top: 0;
}

div#latestJobOffers {
    background-image: url(/images/new/images/joboffers_bg.png);
    background-position: top center;
    background-repeat: repeat;
    margin-top: 40px;
    z-index: 100;
}

div.jobOffer {
    padding: 20px;
}

div.pagination {
    float: right;
    margin-top: 20px;
}

div#viewJobOffer h4 {
    font-size: 1.2em;
}

div#viewJobOffer p {
    margin-bottom: 10px;
}

div#viewJobOffer a.goback {
    display: block;
    width: 100%;
    text-align: right;
    margin: 20px 0px 10px;
}

div#viewJobOffer p.applyWarning {
    border-top-width: 1px;
    border-top-style: solid;
    font-size: 10px;
    padding-top: 10px;
}

div.curriculum p {
    padding-bottom: 0px !important;
    margin-bottom: 0px !important;
}

/**
 * clients
 */
div#leftCol h2, div#rightCol h2 {
    margin-bottom: 20px;
}

div#rightCol ul {
    margin: 20px 0px;
    padding-left: 20px;
}

div#leftCol form {
    top: 10px;
    margin-bottom: 60px;
}

div#leftCol form.login {
    height: 70px;
}

div#leftCol form.request {
    width: 400px;
    height: 370px;
}

div#leftCol form textarea {
    padding: 5px;
    border: none;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
}

div#leftCol form p {
    margin-bottom: 10px;
    overflow: hidden;
}

div#leftCol p.submit{
    top: 16px;
    left: 60%;
}

div#leftCol form.request p.submit{
    left: 70%
}

/**
 * testimonials
 */
div#bigLeftCol div.testimonial h2 {
    margin: 10px 0px 5px;
}
div#bigLeftCol div.testimonial p {
    padding-bottom: 15px;
}

/**
 * other contents
 */
div#bigLeftCol ul, div#bigLeftCol ol, div#right2Col ul {
    padding-left: 25px;
}

div#bigLeftCol p {
    width: 95%;
    margin-bottom: 5px;
}

div#listaemp {
    padding-top: 40px;
    font-size: 1.2em;
}

div#adminWarning {
    border: 2px solid red;
    background: #ccc;
    padding: 10px 4px;
    text-align: center;
    font-size: 12px;
    color: darkred;
}

div#mainServicesList ul {
    list-style: none;
    height: 24px;
    padding: 0;
    margin: 0;
    margin-bottom: 2px;
    width: 621px;
}

div#mainServicesList li {
    font-size: 11px;
    float: left;
    height: 20px;
    padding: 3px 0px;
    text-align: center;
}

div#mainServicesList div {
    display: none;
    position: relative;
    width: 594px;
    height: 143px;
    padding: 30px 0px 0px 25px;
    background-image: url(/images/new/images/services_list_bg.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    font-size: 12px;
}

div#mainServicesList div a {
    display: block;
    position: absolute;
    bottom: 5px;
    right: 10px;
}

div#mainServicesList li#mslOutsourcing { background-color: #b9c167; width: 16%; }
div#mainServicesList li#mslTemporary { background-color: #a3aa5b; width: 22%;}
div#mainServicesList li#mslRecruiting { background-color: #7f8452; width: 26%;}
div#mainServicesList li#mslExecutive { background-color: #646653; width: 20%;}
div#mainServicesList li#mslMerch { background-color: #848677; width: 16%;}

div#mainServicesList p {
    width: 65%;
}

/**
 * color definition
 */

/* white */
div#loginForm input.submit, ul#menu a, div#mainImages a, div#mainImages h2,
div#mainServicesList div, ul#bottomMenu li a, div#minimap, div#mainServicesList li a,
div#jobSearch p.submitSearch input, div#partnerLinks a, div.mainText form p.submit input,
div#leftCol p.submit input{
    color: #fff;
}

div#loginForm input {
    background-color: #fff;
}

/* light grey */
div#loginForm span a {
    color: #ccc;
}

div.mainText form, div#loginForm input, div#jobSearch form, div#leftCol form, 
div.mainText form p input, table#listemp tr {
    border-color: #ccc;
}


/* grey */
div#mainServicesList li a:hover,
div#leftCol form textarea,
input, select, div#languageMenu, div#userInfo, div.mainText form span.tooltip {
    color: #989898;
}

ul#menu {
    background-color: #989898;
}

/* dark grey */
ul#servicesList {
    background-color: #6e6e6e;
}

div#mainImages p, div#footer, div#mainContent, div#featuredJobs h2 a,
div#testimonialsWidget a, div.contacts a, div#smallLeftCol p.cv a,
div#mainServicesList div a {
    color: #6e6e6e;
}

/* olive green */
div#loginForm span.register a, ul#servicesList a:hover, div#bigLeftCol h2,
div#featuredJobs div a, div#testimonialsWidget h2, div.contacts h2, div#applying h2,
div#applying a, div#latestJobOffers a, div.pagination a, div#viewJobOffer h4,
div#viewJobOffer a, div#userInfo a, .tooltip a, div#minimap div span,
div#rightCol a, div#leftCol a, p.printlink a {
    color: #aab534;
}

div#loginForm span.register, ul#menu {
    border-color: #aab534;
}

