/* generic and default module styles (default is blue border, with header, no fade) */
.module {
    position: relative;
    margin-left: 10px;
    margin-bottom: 15px;
}

#right .module {
    margin-right: 10px;
}

.module .content {
    position: relative;
}

.module .t,
.module .content,
.module .b,
.module .b div {
    background: transparent url(../img/module-blue-border-header.png) top right no-repeat;
}

/* explicit resets needed for fade-down nested module */

.module-fade-up .module-fade-down .content {
    background-position: top right;
}

.module-fade-up .module-fade-down .t,
.module .t {
    position: absolute;
	left: 0;
	top: 0;
	width: 10px;
	margin-left: -10px;
	height: 100%;
	background-position: top left;
}

.module-fade-up .module-fade-down .b,
.module .b {
    position: relative;
    width: 100%;
    background-position: bottom right;
}

.module-fade-up .module-fade-down .b {
    margin-left: 0;
}

.module-fade-up .module-fade-down .b,
.module .b,
.module-fade-up .module-fade-down .b div,
.module .b div {
    height: 8px;
    font-size: 1px;
}

.module-fade-up .module-fade-down .b div,
.module .b div {
    position: relative;
	width: 10px;
	margin-left: -10px;
	background-position: bottom left;
}

/* structural changes for fade up modules */
.module-fade-up .b {
    position: absolute;
	left: 0;
	bottom: 0;
	width: 10px;
	margin-left: -10px;
	height: 100%;
	background-position: bottom left;
}

.module-fade-up .content {
    background-position: bottom right;
}

.module-fade-up .t {
    position: relative;
    width: 100%;
    background-position: top right;
    margin-left: 0;
}

.module-fade-up .t,
.module-fade-up .t div {
    height: 10px;
    font-size: 1px;
}

.module-fade-up .t div {
    position: relative;
	width: 10px;
	margin-left: -10px;
	background-position: top left;
}

/* background image for white module, with header, fade up */
.module-white-header .t,
.module-white-header .content,
.module-white-header .b,
.module-white-header .t div {
    background-image: url(../img/module-white-header-tall.png);
}

/* background image for white module, with header, no fade */
.module-white-header-no-fade .t,
.module-white-header-no-fade .content,
.module-white-header-no-fade .b,
.module-white-header-no-fade .t div {
    background-image: url(../img/module-white-header-no-fade.png);
}

/* background image for dblue module, with header, no fade */
.module-dblue-header-no-fade .t,
.module-dblue-header-no-fade .content,
.module-dblue-header-no-fade .b,
.module-dblue-header-no-fade .t div {
    background-image: url(../img/module-dblue-header-no-fade.png);
}


/* background image for blue module, with header, fade up */
.module-blue-header .t,
.module-blue-header .content,
.module-blue-header .b,
.module-blue-header .t div {
    background-image: url(../img/module-blue-header.png);
}

/* background image for light blue module, with header, fade up */
.module-light-blue-header .t,
.module-light-blue-header .content,
.module-light-blue-header .b,
.module-light-blue-header .t div {
    background-image: url(../img/module-light-blue-header.png);
}

/* background image for blue module, no header, fade up */
.module-blue .t,
.module-blue .content,
.module-blue .b,
.module-blue .t div {
    background-image: url(../img/module-blue-no-header.png);
}

/* background image for light blue module, no header, fade up */
.module-light-blue .t,
.module-light-blue .content,
.module-light-blue .b,
.module-light-blue .t div {
    background-image: url(../img/module-light-blue-no-header.png);
}

/* background image for dark blue module, short fade */
.module-dark-blue-short-fade .t,
.module-dark-blue-short-fade .content,
.module-dark-blue-short-fade .b,
.module-dark-blue-short-fade .t div {
    background-image: url(../img/module-dark-blue-short-fade.png);
}

/* background image for white module, no header, fade up */
.module-white .t,
.module-white .content,
.module-white .b,
.module-white .t div {
    background-image: url(../img/module-white-no-header.png);
}

/* modules with a fade and no header need a minimum height */
.module-blue .content,
.module-light-blue .content,
.module-white .content {
    min-height: 175px;
}

/* background image for blue module with border, no header */
.module-blue-border .t,
.module-blue-border .t div,
.module-blue-border .content,
.module-blue-border .b,
.module-blue-border .b div {
    background-image: url(../img/module-blue-border-no-header.png);
}

/* background-image for white module, drop shadow */
.module-white-drop-shadow .t,
.module-white-drop-shadow .content,
.module-white-drop-shadow .b,
.module-white-drop-shadow .b div {
    background-image: url(../img/module-white-drop-shadow.png);
}

/* background-image for white module, flat-top drop shadow */
.module-white-drop-shadow-flat .t,
.module-white-drop-shadow-flat .content,
.module-white-drop-shadow-flat .b,
.module-white-drop-shadow-flat .b div {
    background-image: url(../img/module-white-drop-shadow-flat.png);
}

/* background-image for blue module, short fade */
.module-blue-short-fade .t,
.module-blue-short-fade .content,
.module-blue-short-fade .b,
.module-blue-short-fade .t div {
    background-image: url(../img/module-blue-short-fade.png);
}

/* background-image for blue border module, short fade */
.module-blue-border-short .t,
.module-blue-border-short .content,
.module-blue-border-short .b,
.module-blue-border-short .b div {
    background-image: url(../img/module-blue-border-short.png);
}

/* module headers */
.news-article #main .hd h1,
.news-article #main .hd h2,
.module .hd h3,
.module .hd h2 {
    display: block;
    height: 38px;
    color: #fff;
    font-size: 125%;
    line-height: 38px;
    background-color: transparent;
    background-position: top left;
    background-repeat: no-repeat;
    padding-left: 0;
    margin-left: 3px;
}

.news-article #main .hd h1 {
    background-image: none;
}

.module .hd .award,
.module .hd .search,
.module .hd .shield {
    margin-left: -2px;
    padding-left: 35px;
}

.module .hd .shield {
    background-image: url(../img/module-header-shield.png);
}

.module .hd .search {
    background-image: url(../img/module-header-search.png);
}

.module .hd .award {
    background-image: url(../img/module-header-award.png);
}

/* fix height of header for fade-up modules */
.module-light-blue-header .t,
.module-light-blue-header .t div,
.module-white-header .t,
.module-white-header .t div,
.module-white-header-no-fade .t,
.module-white-header-no-fade .t div,
.module-dblue-header-no-fade .t,
.module-dblue-header-no-fade .t div,
.module-blue-header .t,
.module-blue-header .t div {
    height: 38px;
}

/* position of header for fade-up module */
.module-fade-up .hd {
    position: absolute;
    margin-top: -38px;
}

/* generic padding */
.module .bd {
    padding: 15px 0 5px 4px;
}

/* but we sometimes need the content flush - in which case we need to shift the bd over */
.module .bd.flush {
    padding: 0;
    margin-left: -10px;
}

/* default text and link styles for different background colours on modules */
.module .bd,
.module-blue .bd,
.module-tabbed .bd,
.module-blue-border .bd {
    color: #fff;
}

.module-white .bd,
.module-white-header .bd,
.module-white-header-no-fade .bd,
.module-dblue-header-no-fade .bd,
.module-light-blue .bd,
.module-light-blue-header .bd {
    color: #000;
}

.module-white .bd a,
.module-white-header .bd a,
.module-light-blue .bd a,
.module-light-blue-header .bd a {
    /*color: #000;*/
}

/* tabbed module */
/* tabbed module can't have a fade when tabbed*/
.js .module-tabbed .content,
.js .module-blue-border .b,
.js .module-blue-border .b div {
    background-image: url(../img/module-blue-border-no-fade.png);
}

.tabs-content {
    position: relative;
}

#right .module-tabbed {
    margin-right: 10px;
    margin-bottom: 15px;
    margin-top: -4px;
}

.module-tabbed .b,
.tabs-content {
    background: transparent url(../img/module-blue-border-no-fade.png) bottom right no-repeat;
}

.module-tabbed .b {
    position: absolute;
    height: 100%;
    background-position: bottom left;
    width: 9px;
    top: 0;
    left: 0;
    margin-left: -9px;
}

.js .module-tabbed .t,
.js .module-tabbed .t div {
    display: none;
}

.js .module-tabbed .bd {
    padding: 0;
}

.js .tabbed .tabs-content {
    clear: both;
    padding-top: 9px;
    padding-left: 8px;
    margin-left: 9px;
}

.js .tabbed .current-info,
.js .tabbed .accessibletabsanchor {
    position: absolute;
    left: -9999em;
    display: block;
}

.tabnavhd {
    float: left;
    background: transparent url(../img/bg-line.gif) bottom left repeat-x;
    /*margin-left: -10px;*/
    /*margin-top: -50px;*/
    z-index: 2;
}

.tabnavhd ul {
    margin: 0;
    padding: 10px 0 0 9px;
}

.tabnavhd ul li {
    float: left;
    margin: 0;
    padding: 0;
    background: transparent url(../img/module-tab-blue-border-inactive-right.png) top right no-repeat;
}

/* extra specificity for link colour override */
.module-tabbed .tabnavhd ul li a {
    background: transparent url(../img/module-tab-blue-border-inactive-left.png) top left no-repeat;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    display: block;
    height: 31px;
    padding: 6px 0 2px 3px;
    margin-left: -3px;
    font-size: 90%;
    color: #fff799;
}

.module-tabbed .tabnavhd ul li a:hover {
    color: #fff;
    text-decoration: underline;
}

.module-tabbed .tabnavhd ul li.current a:hover {
    text-decoration: none;
}

.tabnavhd ul li.current {
    background-image: url(../img/module-blue-border-no-fade.png);
    margin-right: 6px;
    margin-top: -4px;
    padding-right: 8px;
}

.tabnavhd ul li.current a {
    background-image: url(../img/module-blue-border-no-fade.png);
    padding: 11px 0 2px 10px;
    margin-left: -9px;
    color: #fff;
}

.tabnavhd .tab0 {
    width: 60px;
    margin-left: -6px;
}

.tabnavhd .tab0.current {
    margin-left: 0;
}

.tabnavhd .tab0.current a {
    padding-left: 6px;
}

.tabnavhd .tab1 {
    width: 60px;
}

.tabnavhd .tab1.current {
    width: 54px;
    margin-left: 11px;
    margin-right: 7px;
}

.tabnavhd .tab2 {
    width: 79px;
}

.tabnavhd .tab2.current {
    width: 80px;
    margin-left: 11px;
    margin-right: 0;
}

.module-tabbed .tabnavhd ul li.tab1 a {
    padding-left: 0;
}

.module-tabbed .tabnavhd ul li.tab1.current a {
    margin-left: -8px;
    padding-left: 5px;
}

/* side by side modules */
.modules-three-one .left {
    float: left;
    width: 63%;
}

.modules-three-one .right {
    float: right;
    width: 31%;
}
/*
.modules-three-one .right .content {
    height: 285px;
}
*/
.modules-three-one .content {
    min-height: 185px;
}

.modules-fifty-fifty .left {
    float: left;
    width: 48%;
}

.modules-fifty-fifty .right {
    float: right;
    width: 48%;
}

.modules-three-equal .left {
    float: left;
    width: 32%;
}

.modules-three-equal .centre {
    float: left;
    width: 32%;
    margin-left: 19px;
}

.modules-three-equal .right {
    float: right;
    width: 31%;
}
