/* ==========================================================================
   Notes 
   ========================================================================== 
    
    21/3/13
    Header tabs too far to the right.
    iOS safari - fixed header ok, but wrapper divs butted up to left with no margin
    Safari iOS - headr ok but main wrapper no left margin.
*/

/* ==========================================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)

   Digimedio
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

/*

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}*/

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

img {
    vertical-align: middle;
}

fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    padding: 0.2em 0;
    color: #000;
    background: #ccc;
}

/* ==========================================================================
   Author's custom styles - Digimedio
   ========================================================================== */

/* Nav font height 13px (0.8em) NeuzeitGroT Regu / Bold 
   Logo font Blair ITC Med 
   For server use - use domain root notation for background image ie url("/img/body-bg.png");

*/

html { 
    font-size: 1em;
}

body {
    font-family: NeuzeitGro-Reg, sans-serif;
    line-height: 1.2;  
    color: black;
}

a {
    text-decoration: none;
}

ul, p {
    margin: 0;
    padding: 0;
    list-style-type: none; 
}

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

.Blair-Med { 
    font-family: BlairITC-Medium;
    font-weight: normal;
    font-style: normal;
    color: black;
}

#head {
    position: relative;
    z-index: 10;
    width: 100%;
    margin-top: 0;
    background: transparent url("../img/header-bg.png") 0 0 repeat-x;
    background-size: 100% 150px; /* iOS Safari */
    }

    #banner-wrap {
	position: relative;
        width: 978px;
        height: 150px;
        margin: 0 auto;
    }
        
    #head #hdr-logo {
        position: absolute;
        top: 0;
        left: 12px;
    }
		
    #head #hdr-logo a {
        display: block;
        width: 159px;
        height: 132px;     
    }
    
    #head #banner-wrap section ul {
        float: right;
        margin-right: -2px;
    }
    
    #head #banner-wrap section ul li {
        display: block;
        float: left; 
    }
    
    .social-link #fb {
        display: block;
        margin: 9px 11px 0 0;
        width: 26px;
        height: 26px;
        background: transparent url("../img/icn-facebook.png") 0 0 no-repeat;
    }
    
    .social-link #tw {
        display: block;
        margin: 9px 11px 0 0;
        width: 26px;
        height: 26px;
        background: transparent url("../img/icn-twitter.png") 0 0 no-repeat;
    }
    
    .social-link #lk {
        display: block;
        margin: 9px 43px 0 0;
        width: 26px;
        height: 26px;
        background: transparent url("../img/icn-linkedin.png") 0 0 no-repeat;
    }
    
    #careers {
        margin: 0 0 0 0;
        width: 77px;
        height: 39px;
        background: transparent url("../img/btn-tab-l.png") 0 0 no-repeat;        
    }
    
    #careers a {
        display: block;
        padding: 13px 0 0 16px;
        color: white;
    }
    
    #contact {
        margin: 0 0 0 0;
        width: 93px;
        height: 39px;
        padding: 0 0 0 0;
        background: transparent url("../img/btn-tab-r.png") 0 0 no-repeat;             
    }
    
    #contact a {
	float: right;
        padding: 13px 18px 0 0;
        color: white;
    }
    
    #head nav {
        float: right;
        position: relative;
        margin: 57px 0 0 0;
    }
    
    #head nav ul {
        float: right;
        font-size: 1.5em;
        text-shadow: 0 1px white;
    } 
    
    #head nav ul li {
        display: block;
        float: left;
    }
    
    #head nav ul li a{
        display: block;
        float: left;
        padding: 0 15px 12px 15px;
    }
    
    #head nav ul li.services a{
        color: #f07d00;
    }

    #services #head nav ul li.services a:link, #head nav ul li.services a:hover, #head nav ul li.services a:active {
        color: #f07d00;
        background: transparent url("../img/nav-services-uline.png") -3px 30px no-repeat;
    }
    
    #head nav ul li.brands a{
        color: #e6007e;
    }

    #head nav ul li.content a{
        color: #d91016;
    }

    #head nav ul li.news a{
        color: #951b81;
    }

    #head nav ul li.about a{
        color: #004f9f;
    }
           
#window-wrap {
    position: relative;
    z-index: 5;
    top: -18px; 
    
    width: 978px;
    margin: 0 auto 0 auto;
    }
	
    #home #window-wrap {
        height: 349px; 
    }    
    
    #services #window-wrap {
        width: 100%;
        height: 265px; 
        margin: 0;
        background: transparent url("../img/services-mainwrap-bg.png") 0 250px repeat-x;
        background-size: 100% 15px;
    } 
    
    #home #window {
        position: absolute;
        left: -51px;
        width: 1080px;
        height: 348px;
        overflow: hidden;
        /*left: -2211px;
        left: -1131px;*/
    }
    
    #services #window {
        position: relative;
        width: 1080px;
        height: 250px;
        margin: 0 auto;
    }
    
    #services #window featured1 {
        position: absolute;
        left: -51px;
    }
    
    #services #window article {
        position: absolute;
        z-index: 100;
        left: 51px;
        width: 330px;
        padding: 4.5em 0 0 12px;
    }
    
    #window-inner {
        position: absolute;
        width: 3240px;
        height: 349px;
    }

    .featured1 {
        position: absolute;
        width: 1080px;
        left: 51px;
    }

    .featured2 {
        position: absolute;
        width: 1080px;
        left: 1131px;
    }

    .featured3 {
        position: absolute;
        width: 1080px;
        left: 2211px;
    }
	
    .featured1 img, .featured2 img, .featured3 img{
        position: absolute;
        left: -51px;
    }

    .featured1 a img, .featured2 a img, .featured3 a img{
        position: absolute;
        top: 218px;
        left: 193px;   
        z-index: 100;
    }
       
    #window article{
        position: absolute;
        z-index: 100;
        width: 280px;
        font-size: 1.375em;
    }
    
    #window .featured1 article {
        padding: 140px 0 0 12px;
        
    }
    
    #window .featured2 article, #window .featured3 article {
        padding: 130px 0 0 12px;
    }
        
#intro-wrap {
    position: relative;
    top: -18px; 
    background: #ededed url("../img/intro-bg.png") 0 0 repeat-x;
    background-size: 100% 20px;
    }
    
    .dots-wrap {
        position: absolute;
        top: -314px;
        z-index: 100;
        overflow: hidden;
        width: 61px;
        height: 18px;
        margin: 1px 0 0 9px;
    }
    
    .dots {
        position: absolute;
        left: -42px;
        width: 105px;
        height: 18px;
        background: transparent url("../img/dot-sprite.png") 0 0 no-repeat;    
    } 
    
    .intro {
        position: relative;
        width: 978px;
        margin: 0 auto 0 auto;
    }

    .intro article {
        margin: 0;
        padding: 23px 12px 23px 12px;
        font-size: 1.06em;
        line-height: 1.25;
        color: #626262;
    }

    .intro article .small {
        font-size: 0.72em;
    }
    
#home #main-wrap {
    position: relative;
    top: -18px; 
    width: 978px;
    margin: 0 auto 0 auto;
    }
    
#services #main-wrap {
    position: relative;
    top: -33px;
    width: 978px;
    margin: 0 auto 0 auto;
    }
    
    #home .col-services, .col-onlinecont, .col-news {
        position: relative;
        float: left;
        width: 302px;
        padding: 16px 12px 0 12px;
    }
    
    #services .col-subnav {
        float: left;
        position: relative;
        height: 100%;
        width: 199px;
        padding: 16px 0 0 0;
    }
    
    #services .col-subnav ul li {
        padding: 6px 0 6px 12px;
        margin: 2px 0;
        font-size: 1.2em;
        color: #626262;
        background: transparent url(../img/services-subnav.png) 0 0 no-repeat;
    }
    
    #services .col-subnav ul li:first-child {
        background: none;
    }
    
    #services .col-subnav ul li:last-child {
        margin: -2px 0 0 0;
    }
  
    #services .col-subnav em{
        font-style: normal;
        color: black;
    }
    
    #services .col-subnav img{
        float: right;
        padding: 0 5px 0 0;
    }
    
    #services .col-main {
        float: left;
        position: relative;
        width: 526px;
        margin: 0 0 0 0;
        padding: 23px 27px 16px 27px;
        color: #626262;
        background-color: #ededed;
    }
    
   #services .col-main em{
        font-weight: bold;
        font-style: normal;
    }
    
    #services .col-main span.underline {
        text-decoration: underline;
        font-size: 1em;
        color: #626262;
    }
  
    #main-wrap h2 {
        margin: 0 0 8px 0;
    }
    
    #services #main-wrap h2 {
        margin: 0 0 17px 0;
    }
    
    #main-wrap p {
        margin: 0 0 18px 0;
    }
    
    .col-services section {
        position: relative;
    } 
    
    #home .col-services h2, #services .col-main span  {
        color: #f07d00;
    }
    
    #services .col-main span, #services .col-subnav span {
        color: #f07d00;
        font-size: 1.1em;
    }
    
    .col-services img {
        float: left;
	margin: 0 0 0 -4px;
    }
    
    .col-services img.arrow {
        position: absolute;
        top: 87px;
        left: 10px;
	}
    
    .col-services section {
        clear: right;
        }    
        
    .col-services div {
        float: right;
        width: 195px;
        padding-bottom: 16px;
    }    
        
    .col-onlinecont h2 {
        color: #d91016;
    }
    
    .col-onlinecont .img-main {
        margin-left: -5px;
    }
    
    .col-onlinecont section {
        position: relative;
        height: 395px;
    }
    
    .col-onlinecont ul {
        position: absolute;
        bottom: 0;
        height: 76px;
    }
    
    .col-onlinecont ul li {
        float: left;
        position: relative;
        width: 100px;
        font-size: 1.3em;
    }
    
    .col-onlinecont ul li.btn-grey {
        top: -8px;
        padding: 0 1px 0 1px;
    }
    
    .col-onlinecont ul li a{
        display: block;
        width: 80px;
        padding: 6px 0 10px 12px;
        text-align: center;
        color: #fff;
    }
   
    .col-news h2, .col-news h3, .col-news span {
        color: #951b81;
    }
    
    .col-news h3 {
        margin: 11px 0 0 0;
        font-family: NeuzeitGro-Bol;
    }
    
    .col-news img {
        margin-top: -2px;
    }
    
    #main-wrap .col-news p {
        margin: 0 0 0 0;
    }
    
    .col-news span {
        position: absolute;
	top: 21px;
        right: 12px;
    }
    
    #services aside {
        float: right;
        position: relative;
        width: 199px;
        height: 100%;
        margin: 11px 0 0 0;
    }
    
    #services aside section {
        position: relative;
        width: 195px;
        height: 195px;
        overflow: visible;
        margin-bottom: 14px;
    }
    
    #services aside section figure{
        position: absolute;
        margin-left: 14px;
    }
    
    #services aside section figure figcaption{
        position: absolute;
        top:0;
        left: 5px;
        z-index: 5;
        padding: 13px 11px 0 11px;
        font-size: 1.2em;
        text-shadow: -1px 1px 1px rgba(1,1,1,.4);
        color: white;
    }
    
    #services aside section .arrow {
        position: absolute;
        top: 173px;
        right: 16px;
    }
    
    #main-wrap .brand-links {
        float: left;
        position: relative;
        width: 978px;
        height: 130px;
        margin: 17px 0 0 0;
        background: transparent url(../img/brands-bg.jpg) 0 0 no-repeat;
    }
       
    #main-wrap .brand-links div {
        position: absolute;
        top: 50%;
        width: 255px;
        height: 60px;
    }	

    #main-wrap .brand-links article{
        position: absolute;
        width: 270px;
        padding: 28px 0 0 20px;
        font-size: 1.25em;
        line-height: 1.1;
        letter-spacing: 0.8px;
    }	

    #main-wrap .brand-links article span{
        color: #e6007e;
    }	

    #main-wrap .brand-links ul {
        float: right;
        margin-right: 35px;
        line-height: 130px;
    }    

    #main-wrap .brand-links ul li{
        float: left;
        padding-left: 10px;
    }  

    #main-wrap .brand-links img.arrow{
        position: absolute;
        top: 77px;
        left: 211px;
    }
        
    #main-wrap .social-links {
        float: left;
        position: relative;
        width: 978px;
        height: 130px;
        margin: 36px 0 0 0;
        background: transparent url(../img/socialmedia-bg.png) 0 0 no-repeat;
    }

    #main-wrap .social-links p{
        float: left;
        position: relative;
        left: 330px;
    }

    #main-wrap .social-links ul {
        float: right;
        position: relative;
        line-height: 130px;
    }

    #main-wrap .social-links ul li{
        float: left;
        padding-right: 13px;
        font-size: 1.4em;
    }
     
    #main-wrap .social-links ul li:first-child{
        padding-right: 20px;
    }
    
    #main-wrap .social-links ul li:last-child{
        padding-right: 41px;
    }
    
    footer {
        float: left;
        /*clear: left;*/
        position: relative;
        width: 978px;
        margin-top: 33px;
        padding: 0;
    }
    
    footer a {
        color: black;
    }
    
    footer dl {
        float: left;
        width: 171px;
	height: 121px;
        margin-right: 1px;
        padding: 8px 12px 0 12px;
    }
    
    footer dt, dd{ 
        margin: 0; 
        padding-top: 7px;
        font-size: 0.85em;
        line-height: 1.05;
	
    }

    footer dl.services {
        border-top: 3px solid #f07d00;
        color: #f07d00;
        background: transparent url(../img/footer-bg-left.jpg) 0 0 no-repeat; 
	}

    footer dl.brands, footer dl.content, footer dl.news {
        background: transparent url(../img/footer-bg-mid.jpg) 0 0 no-repeat;    
        }
        
    footer dl.brands {
        border-top: 3px solid #e6007e;
        color: #e6007e;
    }

    footer dl.content {
        border-top: 3px solid #d91016;
        color: #d91016;
    }

    footer dl.news {
        border-top: 3px solid #951b81;
        color: #951b81;
    }

    footer dl.about {
        border-top: 3px solid #004f9f;
        color: #004f9f;
        background: transparent url(../img/footer-bg-right.jpg) 0 0 no-repeat;
    }
    
    footer dl.last {
        width: 170px;
        margin-right: 0;
    }
    
    #main-wrap footer ul{
        margin-left: 12px;
    }
    
    #main-wrap footer ul li {
        float: left;
        margin: 22px 7px 35px 0;
        font-size: 0.85em;
    }

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 35em) {

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    overflow: hidden;
    border: 0;
    *text-indent: -9999px;
    background-color: transparent;
}

.ir:before {
    display: block;
    width: 0;
    height: 150%;
    content: "";
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    margin: 0;
    clip: auto;
    
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    display: table;
    content: " ";
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.clear {
    clear: both;
}


/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        box-shadow: none !important;
        text-shadow: none !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        background: transparent !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}