/* Reset ---------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, 
font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, 
b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, 
table, caption, tbody, tfoot, thead, tr, th, td, 
article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, 
menu, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    *behavior: url(assets/js/polyfills/boxsizing.htc);
}

html {
    overflow-y: scroll;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

a {
    text-decoration: none;
    line-height: inherit;
    font-weight: inherit;
}

a:focus {
    outline: thin dotted;
}

a:hover,
a:active {
    outline: 0;
}

img {
    max-width: 100%;
    border: 0;
    -ms-interpolation-mode: bicubic;
}

button, input, select, textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button, input {
    line-height: normal;
    *overflow: visible;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;        
}        
                                                                            
textarea {
    overflow: auto;
    vertical-align: top;
}


/* Clearfix ------------------------------------------------------------------*/

.clearfix:after {
    content: ".";
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
}

.clearfix {
    *zoom: 1;
}


/* @font-face ----------------------------------------------------------------*/

@font-face {
    font-family: 'FreestyleScriptRegular';
    src: url('../fonts/freestylescript-regular-webfont.eot');
    src: url('../fonts/freestylescript-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/freestylescript-regular-webfont.woff') format('woff'),
         url('../fonts/freestylescript-regular-webfont.ttf') format('truetype'),
         url('../fonts/freestylescript-regular-webfont.svg#FreestyleScriptRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'PalatinoLTStdItalic';
    src: url('../fonts/palatinoltstd-italic-webfont.eot');
    src: url('../fonts/palatinoltstd-italic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/palatinoltstd-italic-webfont.woff') format('woff'),
         url('../fonts/palatinoltstd-italic-webfont.ttf') format('truetype'),
         url('../fonts/palatinoltstd-italic-webfont.svg#PalatinoLTStdItalic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'PalatinoLTStdBoldItalic';
    src: url('../fonts/palatinoltstd-bolditalic-webfont.eot');
    src: url('../fonts/palatinoltstd-bolditalic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/palatinoltstd-bolditalic-webfont.woff') format('woff'),
         url('../fonts/palatinoltstd-bolditalic-webfont.ttf') format('truetype'),
         url('../fonts/palatinoltstd-bolditalic-webfont.svg#PalatinoLTStdBoldItalic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ITCAvantGardeGothicStdBdCn';
    src: url('../fonts/itcavantgardestd-boldcn-webfont.eot');
    src: url('../fonts/itcavantgardestd-boldcn-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/itcavantgardestd-boldcn-webfont.woff') format('woff'),
         url('../fonts/itcavantgardestd-boldcn-webfont.ttf') format('truetype'),
         url('../fonts/itcavantgardestd-boldcn-webfont.svg#ITCAvantGardeGothicStdBdCn') format('svg');
    font-weight: normal;
    font-style: normal;
}


/* Base styles ---------------------------------------------------------------*/

body {
    overflow-x: hidden;
    font: 100%/1.25 Arial, Tahoma, Helvetica, sans-serif;
    color: #222;
    background: #fff url('../img/layout/bg-body.png') repeat;
    -webkit-background-size: 5px;
    -moz-background-size: 5px;
    -o-background-size: 5px;
    background-size: 5px;
}

::selection {
    color: #fff;
    background: #000;
}

::-moz-selection {
    color: #fff;
    background: #000;
}

p, dd {
    margin-bottom: 15px;
    font: normal 1em 'PalatinoLTStdItalic';
    text-align: justify;
}

a, a:visited {
    -webkit-transition: color .35s ease;
    -moz-transition: color .35s ease;
    -o-transition: color .35s ease;
    -ms-transition: color .35s ease;
    transition: color .35s ease;
    text-decoration: none;
    color: #222;
}

a:hover, a:active, a:focus {
    color: #d82427;
}

body > * {
    padding: 0 15px;
}

body > * .container {
    margin: 0 auto;
    padding-bottom: 10px;
}

body > * h2 {
    margin-bottom: 10px;
    font: normal 2.5em 'FreestyleScriptRegular';
    text-align: center;
    color: #d82427;
}

body > * h2 em {
    font-style: normal;
    color: #000;
}

body > article {
    padding-top: 15px;
    background: url(../img/layout/arrow-down.png) no-repeat 50% -2px;
    -webkit-background-size: 34px 12px;
    -moz-background-size: 34px 12px;
    -o-background-size: 34px 12px;
    background-size: 34px 12px;
}

body > article .container {
    border-bottom: 1px solid #d82427;
}

body > article nav,
body > footer nav {
    display: none;
}


/* Navigation ----------------------------------------------------------------*/

nav {
    float: left;
    clear: both;
    width: 100%;
}

nav ul {
    position: relative;
    left: 50%;
    float: left;
    clear: left;
    list-style-type: none;
}

nav li {
    position: relative;
    right: 50%;
    float: left;
    height: 98px;
    margin: 0 25px 0 0;
}

nav li.tools {
    display: none;
}

nav li.letter {
    margin: 0;
}

nav li.ident,
nav li.letter {
    float: right;
}

nav li a, 
nav li a:visited {
    display: block;
    min-width: 50px;
    padding: 50px 20px 5px 0;
    font: normal 1.75em 'FreestyleScriptRegular';
    text-align: center;
    color: #b7b7b7;
    background: url(../img/layout/sprite-nav.png) no-repeat 50% 0;
}

nav li a:hover,
nav li a:active,
nav li a:focus {
    color: #d82427;
}

nav li.active a {
    color: #d82427;
}

nav li.people a {
    background-position: 50% -200px;
}

nav li.tools a {
    background-position: 50% -503px;
}

nav li.ident a {
    background-position: 50% -806px;
}

nav li.people a:hover,
nav li.people.active a{
    background-position: 50% -300px;
}

nav li.tools a:hover,
nav li.tools.active a {
    background-position: 50% -603px;
}

nav li.ident a:hover,
nav li.ident.active a {
    background-position: 50% -906px;
}

nav li.letter a:hover,
nav li.letter.active a {
    background-position: 50% -100px;
}


/* Header --------------------------------------------------------------------*/

#header {
    padding-top: 15px;
    background: url(../img/layout/bg-header.png) repeat;
    -webkit-background-size: 5px;
    -moz-background-size: 5px;
    -o-background-size: 5px;
    background-size: 5px;
}

#header h1 {
    margin-bottom: 15px;
}

#header h1 a {
    display: block;
    width: 280px;
    height: 82px;
    overflow: hidden;
    margin: 0 auto;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/layout/logo.png) no-repeat;
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto;
    -o-background-size: 100% auto;
    background-size: 100% auto;
}


/* About ---------------------------------------------------------------------*/

#about {
    margin-top: -7px;
    height: 250px;
    background: url(../img/layout/bg-about.png) repeat-x;
    -webkit-background-size: 124px auto;
    -moz-background-size: 124px auto;
    -o-background-size: 124px auto;
    background-size: 124px auto;
}

#about .container {
    padding-top: 10px;
    border-bottom: none;
}

#about h2 {
    position: relative;
    clear: both;
    text-align: center;
}

#about h2:after {
    display: block;
    position: absolute;
    top: 25px;
    z-index: 1;
    width: 100%;
    border-top: 1px solid #d82427;
    content: '';
}

#about h2 span {
    position: relative;
    z-index: 2;
    padding: 0 10px;
    background: url(../img/layout/bg-about.png) repeat center -20px;
}


/* Who -----------------------------------------------------------------------*/

#who {
    margin-top: -4px;
}


/* What ----------------------------------------------------------------------*/

#what {
    display: none;
    background: none;
}


/* Jobs ----------------------------------------------------------------------*/

#jobs .container {
    border-bottom: none;
}

#jobs .jobs {
    position: relative;
    margin: 20px 0 0;
    padding: 40px 0 60px;
    background: url(../img/layout/bg-spine.png) repeat-y center top;
}

#jobs .jobs:before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    clear: both;
    width: 30px;
    height: 0;
    margin-left: -15px;
    border-top: 2px solid #dc282c;
    content: '';
}

#jobs .jobs h3 {
    display: inline-block;
    *display: inline;
    position: absolute;
    top: 0;
    left: 50%;
    width: 120px;
    *width: 100px;
    margin-left: -60px;
    padding: 6px 10px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    font: normal 0.875em "PalatinoLTStdBoldItalic";
    text-align: center;
    color: #fff;
    background: #dc282c;
    behavior: url(assets/js/polyfills/PIE.htc);
}

#jobs .job {
    position: relative;
    max-width: 432px;
    margin: 20px auto 0;
    border: 1px solid #dbdbdb;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, .3);
    -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 1px 5px rgba(0, 0, 0, .3);
    background: #fff;
}

#jobs .job:hover {
    background: #efefef;
}

#jobs .job a {
    font: normal 14px/120% 'PalatinoLTStdBoldItalic';
    color: #d82427;
}

#jobs .job a:hover {
    color: #000;
}

#jobs .job ul {
    margin: 0;
    list-style-type: none;
}

#jobs .job header {
    padding: 25px 15px 20px;
    border-bottom: 1px solid #dbdbdb;
}

#jobs .job h4 {
    text-transform: uppercase;
    color: #d82427;
    font: normal 1.25em 'ITCAvantGardeGothicStdBdCn';
}

#jobs .job .info {
    font: normal 0.75em 'ITCAvantGardeGothicStdBdCn';
    text-transform: uppercase;
    color: #b2b2b2;
}

#jobs .job .photo {
    padding: 10px;
    border-bottom: 1px solid #dbdbdb;
}

#jobs .job .description section {
    padding: 20px 15px;
    border-bottom: 1px solid #dbdbdb;
}

#jobs .job .description section:first-child {
    border-top: none;
}

#jobs .job .description h5 {
    margin-bottom: 10px;
    font: normal 1em 'ITCAvantGardeGothicStdBdCn';
    text-transform: uppercase;
    color: #dc282c;
}

#jobs .job .description p,
#jobs .job .description li { 
    font: normal 1em 'PalatinoLTStdItalic';
    color: #222;
}

#jobs .job .description li {
    margin: 0 0 5px 10px;
    text-indent: -10px;
}

#jobs .job .description li:before {
    position: relative; 
    content: '- ';
}

#jobs .job .reasons {
    display: none;
    position: relative;
    padding: 15px 10px;
    border-bottom: 1px solid #434343;
    color: #fff;
    background-color: #cc2124;
    background-image: -webkit-linear-gradient(0, transparent 75%, rgba(0, 0, 0, .04) 25%);
    background-image: -moz-linear-gradient(0px 50%, transparent 75%, rgba(0, 0, 0, 0.04) 25%);
    background-image: -o-linear-gradient(0, transparent 75%, rgba(0, 0, 0, .04) 25%);
    background-image: -ms-linear-gradient(0, transparent 75%, rgba(0, 0, 0, .04) 25%);
    background-image: linear-gradient(0, transparent 75%, rgba(0, 0, 0, .04) 25%);
    -webkit-background-size: 4px;
    -moz-background-size: 4px;
    -o-background-size: 4px;
    background-size: 4px;
}

#jobs .job .reasons h5 {
    margin-bottom: 10px;
    font: normal 0.875em "ITCAvantGardeGothicStdBdCn";
    text-transform: uppercase;
}

#jobs .job .reasons li {
    position: relative;
    float: left;
    width: 50px;
    height: 50px;
    margin-left: 10px;
    border-bottom: 1px solid #da6364;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .35), 0 1px 0 rgba(255, 255, 255, .3);
    -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .35), 0 1px 0 rgba(255, 255, 255, .3);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, .35), 0 1px 0 rgba(255, 255, 255, .3);
    text-indent: auto;
    background: #c01215 url('../img/layout/sprite-icons.png');
    cursor: default;
    behavior: url(assets/js/polyfills/PIE.htc);
}

#jobs .job .reasons li:hover {
    background-color: #fff;
}

#jobs .job .reasons li.projects {
    margin-left: 0;
    background-position: 0 0;
}

#jobs .job .reasons li.salaries {
    background-position: -50px 0;
}

#jobs .job .reasons li.work-hours {
    background-position: -100px 0;
}

#jobs .job .reasons li.health-services {
    background-position: -150px 0;
}

#jobs .job .reasons li.office {
    background-position: -200px 0;
}

#jobs .job .reasons li.bikes {
    background-position: -250px 0;
}

#jobs .job .reasons li.team {
    background-position: -300px 0;
}

#jobs .job .reasons li.projects:hover {
    background-position: 0 -50px;
}

#jobs .job .reasons li.salaries:hover {
    background-position: -50px -50px;
}

#jobs .job .reasons li.work-hours:hover {
    background-position: -100px -50px;
}

#jobs .job .reasons li.health-services:hover {
    background-position: -150px -50px;
}

#jobs .job .reasons li.office:hover {
    background-position: -200px -50px;
}

#jobs .job .reasons li.bikes:hover {
    background-position: -250px -50px;
}

#jobs .job .reasons li.team:hover {
    background-position: -300px -50px;
}

#jobs .job .reasons li span {
    display: none;
    position: relative;
    bottom: 100px;
    left: 50%;
    z-index: 2;
    margin-left: -115px;
    width: 230px;
    height: 85px;
    padding: 10px;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, .6);
    -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, .6);
    box-shadow: 0 1px 5px rgba(0, 0, 0, .6);
    font: normal 1.125em "PalatinoLTStdItalic";
    color: #000;
    background: #fff;
    background: rgba(255, 255, 255, .95);
}

#jobs .job .reasons li span:after {
    display: block;
    position: absolute;
    bottom: -20px;
    left: 50%;
    z-index: 2;
    width: 0;
    height: 0;
    margin-left: -10px;
    border: 10px solid transparent;
    border: 10px solid rgba(0, 0, 0, 0);
    border-top-color: #fff;
    border-top-color: rgba(255, 255, 255, .95);
    content: '';
}

#jobs .job .reasons li:hover span {
    display: block;
}

#jobs .job footer {
    padding: 10px;
    -webkit-border-radius: 0 0 6px 6px;
    -moz-border-radius: 0 0 6px 6px;
    border-radius: 0 0 6px 6px;
    font: normal 0.875em "ITCAvantGardeGothicStdBdCn";
    line-height: 36px;
    text-transform: uppercase;
    color: #dc282c;
    background-color: #f0f0f0;
    background-image: -webkit-linear-gradient(#fefefe, #f0f0f0);
    background-image: -moz-linear-gradient(#fefefe, #f0f0f0);
    background-image: -o-linear-gradient(#fefefe, #f0f0f0);
    background-image: -ms-linear-gradient(#fefefe, #f0f0f0);
    background-image: linear-gradient(#fefefe, #f0f0f0);
}

#jobs .job footer a {
    display: inline-block;
    position: relative;
    margin-left: 10px;
    padding: 0 10px 0 30px;
    border: 1px solid #d7d7d7;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .2);
    -moz-box-shadow: 0 0 2px rgba(0, 0, 0, .2);
    box-shadow: 0 0 2px rgba(0, 0, 0, .2);
    font: normal 1em "ITCAvantGardeGothicStdBdCn";
    line-height: 34px;
    text-align: center;
    color: #000;
    cursor: pointer;
}

#jobs .job footer .linkedin {
    background: #fefefe url(../img/layout/ico-linkedin.png) no-repeat 10px 9px;
    background: url(../img/layout/ico-linkedin.png) no-repeat 10px 9px, -webkit-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-linkedin.png) no-repeat 10px 9px, -moz-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-linkedin.png) no-repeat 10px 9px, -o-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-linkedin.png) no-repeat 10px 9px, -ms-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-linkedin.png) no-repeat 10px 9px, linear-gradient(#fff, #fefefe);
}

#jobs .job footer .email {
    background: #fefefe url(../img/layout/ico-email.png) no-repeat 7px 11px;
    background: url(../img/layout/ico-email.png) no-repeat 7px 11px, -webkit-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-email.png) no-repeat 7px 11px, -moz-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-email.png) no-repeat 7px 11px, -o-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-email.png) no-repeat 7px 11px, -ms-linear-gradient(#fff, #fefefe);
    background: url(../img/layout/ico-email.png) no-repeat 7px 11px, linear-gradient(#fff, #fefefe);
}

#jobs .job footer .IN-widget {
    display: none !important;
}

#jobs .contact-us {
    display: block;
    margin-top: 25px;
    font: normal 1.25em "PalatinoLTStdItalic";
    text-align: center;
    color: #1d1d1d;
}

#jobs .contact-us em {
    font-style: normal;
    color: #d82427
}


/* Contact -------------------------------------------------------------------*/

#contact {
    padding: 20px 15px 10px;
    color: #fff;
    background: url(../img/layout/bg-contact.png) repeat-x;
    -webkit-background-size: 16px auto;
    -moz-background-size: 16px auto;
    -o-background-size: 16px auto;
    background-size: 16px auto;
}

#contact h2 {
    margin-bottom: 10px;
    color: #fff;
}

#contact form {
    width: 220px;
    margin: 0 auto 30px;
}

#contact form div {
    overflow: hidden;
    margin-bottom: 5px;
}

#contact form label {
    display: block;
    padding: 5px 0;
    font: normal 0.875em 'PalatinoLTStdBoldItalic';
}

#contact form input,
#contact form textarea,
#contact form button {
    position: relative;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 0.75em;
    behavior: url(assets/js/polyfills/PIE.htc);
}

#contact form input,
#contact form textarea {
    width: 220px;
    *width: 200px;
    padding: 6px;
    border: 1px solid #ee4548;
    -webkit-box-shadow: inset 0 1px 4px rgba(0, 0, 0, .2);
    -moz-box-shadow: inset 0 1px 4px rgba(0, 0, 0, .2);
    box-shadow: inset 0 1px 4px rgba(0, 0, 0, .2);
    color: #fff;
    background: transparent;
    font: normal 14px;
}

#contact form input:focus,
#contact form textarea:focus {
    outline: 0;
    background: rgba(255, 255, 255, .1);
}

#contact form input {
    height: 34px;
    *height: 24px;
}

#contact form textarea {
    height: 120px;
    resize: none;
}

#contact form button {
    margin: 5px 0 0 100px;
    width: 120px;
    height: 34px;
    border: none;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .5);
    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .5);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .5);
    font: normal 1.875em 'FreestyleScriptRegular';
    color: #d82427;
    background: #fff;
}

#contact .contact {
    width: 300px;
    margin: 0 auto;
}
    
#contact p {
    margin-bottom: 20px;
    font-size: 0.875em;
    text-align: center;
}

#contact address {
    width: 300px;
    height: 70px;
    margin: 0 auto 25px;
    padding: 8px 30px 0;
    font: normal 0.75em/140% 'PalatinoLTStdItalic';
    color: #fff;
    background: url(../img/layout/bg-address.png) no-repeat;
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto;
    -o-background-size: 100% auto;
    background-size: 100% auto;
    cursor: pointer;
}

#contact address strong {
    font-weight: normal;
}

#contact address a {
    display: block;
    color: #fff;
}

#contact address a:hover {
    color: #000;
}

#contact .cright {
    position: relative;
    clear: both;
    text-align: center;
}

#contact .cright:after {
    display: block;
    position: absolute;
    top: 12px;
    z-index: 1;
    width: 100%;
    border-top: 1px solid #97191b;
    content: '';
}

#contact .cright span {
    position: relative;
    z-index: 2;
    padding: 0 5px;
    background: #d82427;
}

#contact .cright span,
#contact .cright a {
    font: normal 0.5em/120% 'PalatinoLTStdItalic';
    color: #97191b;
}

#contact .cright a {
    font: normal 1em 'PalatinoLTStdBoldItalic';
}

#contact .cright a:hover {
    color: #fff;
}


/* Responsive layout ---------------------------------------------------------*/

@media only screen and (min-width: 480px) {
    
    /* Base styles -----------------------------------------------------------*/
    
    p {
        font-size: 1.125em;
    }

    body > * .container {
        margin: 0 auto;
        padding-bottom: 20px;
    }

    body > * h2 {
        font-size: 3.75em;
    }
    
    /* Navigation ------------------------------------------------------------*/
    
    nav ul {
        margin-bottom: 20px;
    }
    
    nav li a {
        min-width: 70px;
        font-size: 2.25em;
    }
    
    
    /* About -----------------------------------------------------------------*/
    
    #about h2:after {
        top: 40px;
    }    
    
    /* Jobs ------------------------------------------------------------------*/
    
    #jobs .job .reasons {
        display: block;
    }
    
    
    /* Contact ---------------------------------------------------------------*/
    
    #contact form {
        width: 350px;
    }
    
    #contact form label {
        float: left;
        width: 130px;
        padding: 5px 15px 0 0;
        text-align: right;
    }

    #contact form input,
    #contact form textarea {
        float: left;
    }
    
    #contact form button {
        margin-left: 130px;
    }
    
    #contact .contact {
        width: 440px;
    }
    
    #contact p {
        font-size: 1.25em;
    }
    
    #contact .cright span {
        font-size: 0.75em;
    }
    
    #contact address {
        width: 440px;
        height: 102px;
        padding: 10px 40px 0;
        font-size: 1.125em;
    }
}

@media only screen and (min-width: 768px) {

    /* Base styles -----------------------------------------------------------*/
    
    p, dd {
        margin-bottom: 25px;
    }
    
    p {
        font-size: 1.325em;
    }
    
    body > article .container {
        padding: 30px 0;
    }
    
    body > article nav,
    body > footer nav {
        display: block;
        margin-bottom: 10px;
    }


    /* Navigation ------------------------------------------------------------*/

    nav, nav ul {
        float: none;
        clear: none;
    }

    nav {
        height: 112px;
        margin-top: -100px;
    }

    nav ul {
        list-style-type: none;
        left: 0;
    }

    nav li {
        right: 0;
        float: left;
        height: 98px;
        margin: 0 25px 0 0;
    }
    
    nav li.tools {
        display: list-item;
    }
    
    nav li a {
        font-size: 1.75em;
    }
    
    
    /* Header ----------------------------------------------------------------*/
    
    #header h1 a {
        width: 380px;
        height: 112px;
    }
    
    #header nav {
        margin-top: -110px;
    }
    
    /* About -----------------------------------------------------------------*/
    
    #about h2 span {
        padding: 0 20px;
    }
    

    /* What ------------------------------------------------------------------*/
    
    #what {
        display: block;
    }
    
    #what .features {
        background: url(../img/layout/bg-features.png) no-repeat center top;
    }
    
    #what .left,
    #what .right {
        float: left;
        width: 32%;
    }
    
    #what .right {
        float: right;
    }

    #what dt {
        margin-bottom: 5px;
        font: normal 1.325em 'ITCAvantGardeGothicStdBdCn';
        text-transform: uppercase;
        color: #d82427;
    }

    #what .right dt {
        color: #111;
    }
    
    
    /* Jobs ------------------------------------------------------------------*/
    
    #jobs .jobs {
        width: 738px;
        margin: 0 auto;
    }
    
    #jobs .job {
        float: left;
        clear: left;
        width: 350px;
    }

    #jobs .job.right {
        float: right;
        clear: right;
    }

    #jobs .job.first {
    	margin-top: 100px;
    }

    #jobs .job:after {
        position: absolute;
        content: '';
        top: 155px;
        right: -27px;
        width: 27px;
        height: 16px;
        background: url(../img/layout/sprite-pointer.png) no-repeat;
    }

    #jobs .job.right:after {
        left: -27px;
        background-position: 0 -16px;
    }
    
    #jobs .contact-us {
        font-size: 1.5em;
    }
    
    
    /* Contact ---------------------------------------------------------------*/

    #contact nav li a {
        color: #97191b;
    }

    #contact nav li.active a,
    #contact nav li a:hover {
        color: #fff;
    }
    
    #contact nav li.people a {
        background-position: 50% -400px;
    }

    #contact nav li.tools a {
        background-position: 50% -703px;
    }

    #contact nav li.ident a {
        background-position: 50% -1006px;
    }
    
    #contact .contact {
        width: 748px;
    }

    #contact form {
        float: left;
    }
    
    #contact p,
    #contact address {
        width: 350px;
        float: left;
        margin-left: 20px;
    }
    
    #contact p {
        font-size: 1em;
        text-align: left;
    }
    
    #contact address {
        height: 82px;
        font-size: 0.875em;
    }
    
    #contact .cright span {
        font-size: 0.875em;
    }
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
    
    /* Jobs ------------------------------------------------------------------*/
    
    #jobs .job .reasons li {
        width: 38px;
        height: 38px;
        -webkit-border-radius: 19px;
        -moz-border-radius: 19px;
        border-radius: 19px;
        -webkit-background-size: 266px auto;
        -moz-background-size: 266px auto;
        -o-background-size: 266px auto;
        background-size: 266px auto;
    }

    #jobs .job .reasons li:hover {
        background-color: #fff;
    }

    #jobs .job .reasons li.projects {
        margin-left: 0;
        background-position: 0 0;
    }

    #jobs .job .reasons li.salaries {
        background-position: -38px 0;
    }

    #jobs .job .reasons li.work-hours {
        background-position: -76px 0;
    }

    #jobs .job .reasons li.health-services {
        background-position: -114px 0;
    }

    #jobs .job .reasons li.office {
        background-position: -152px 0;
    }

    #jobs .job .reasons li.bikes {
        background-position: -190px 0;
    }

    #jobs .job .reasons li.team {
        background-position: -228px 0;
    }

    #jobs .job .reasons li.projects:hover {
        background-position: 0 -38px;
    }

    #jobs .job .reasons li.salaries:hover {
        background-position: -38px -38px;
    }

    #jobs .job .reasons li.work-hours:hover {
        background-position: -76px -38px;
    }

    #jobs .job .reasons li.health-services:hover {
        background-position: -114px -38px;
    }

    #jobs .job .reasons li.office:hover {
        background-position: -152px -38px;
    }

    #jobs .job .reasons li.bikes:hover {
        background-position: -190px -38px;
    }

    #jobs .job .reasons li.team:hover {
        background-position: -228px -38px;
    }
}

@media only screen and (min-width: 960px) {

    /* Common ----------------------------------------------------------------*/
    
    body {
        -webkit-background-size: 8px;
        -moz-background-size: 8px;
        -o-background-size: 8px;
        background-size: 8px;
    }
    
    p {
        font-size: 1.5em;
    }

    body > * {
        padding: 0;
    }

    body > * .container {
        width: 900px;
    }

    body > * h2 {
        font-size: 5em;
    }
    
    body > article {
        -webkit-background-size: auto;
        -moz-background-size: auto;
        -o-background-size: auto;
        background-size: auto;
    }

    body > article nav,
    body > footer nav {
        margin: -115px 0 40px;
        padding-left: 30px;
    }
    
    /* Navigation ------------------------------------------------------------*/
    
    nav li {
        margin: 0;
    }
    
    nav li a {
        font-size: 2.25em;
    }

    nav li.ident a,
    nav li.letter a {
        padding-right: 5px;
        margin-left: 10px;
    }

    nav li.letter a {
        margin-left: 10px;
    }
    
    
    /* Header ----------------------------------------------------------------*/
    
    #header {
        padding: 50px 0 40px;
        -webkit-background-size: 8px;
        -moz-background-size: 8px;
        -o-background-size: 8px;
        background-size: 8px;
    }
    
    #header h1 a {
        width: 506px;
        height: 149px;
    }
    
    #header nav {
        margin-top: -125px;
    }
    
    
    /* About -----------------------------------------------------------------*/
    
    #about {
        margin-top: -10px;
        height: 302px;
        -webkit-background-size: auto;
        -moz-background-size: auto;
        -o-background-size: auto;
        background-size: auto;
    }
    
    #about .container {
        padding-top: 0;
    }
    
    #about h2:after {
        top: 50px;
    }
    
    
    /* What ------------------------------------------------------------------*/
    
    #what dt {
        font-size: 1.875em;
    }
    
    
    /* Jobs ------------------------------------------------------------------*/
    
    #jobs .jobs {
        width: 900px;
        margin-top: 70px;
    }
    
    #jobs .job {
        width: 432px;
    }
    
    #jobs .job header {
        background: url(../img/layout/bg-job-header.png) no-repeat 350px 25px;
    }
    
    
    /* Contact ---------------------------------------------------------------*/
    
    #contact {
        -webkit-background-size: auto;
        -moz-background-size: auto;
        -o-background-size: auto;
        background-size: auto;
    }
    
    #contact nav {
        margin-top: -90px;
    }
    
    #contact .contact {
        width: 900px;
    }
    
    #contact p,
    #contact address {
        width: 516px;
        margin-left: 34px;
        font-size: 1.25em;
    }
    
    #contact address {
        height: 119px;
        padding-top: 20px;
        font-size: 1.125em;
    }
}