/**
 * Information Mapping International
 *
 * Contains all general layout declarations.
 *
 * @author 			Davy De Pauw (davy@marlon.be)
 * @copyright		Marlon BVBA <http://www.marlon.be>
 * @date 			2009-09-16
 * @lastmodified	2009-09-16
 */

/* page structure
---------------------------------------------------------- */

.wrapper {
	width: 100%;
}

.container {
	position: relative;
	width: 920px;
	margin: 0 auto;
}

/* header
---------------------------------------------------------- */

#header {
	background: #009edf;
}

#header .container {
	height: 120px;
	/*background: url(../img/bg_header.png) no-repeat -20px 100%;*/
}

/* login
---------------------------------------------------------- */

#login {
	display: none;
	position: absolute;
	left: 0;
	bottom: 120px;
	width: 100%;
	height: 65px;
	background: #53b5df url(../img/sprite_corners.png) no-repeat 0 100%;
}

#login .inner {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 20px 0 0 0;
	height: 45px;
}

#login .error {
	position: absolute;
	top: -15px;
	left: 20px;
	font-weight: bold;
	color: #fff;
}

.login-inline .field {
	width: 190px;
}

.login-inline dl {
	width: 360px;
}

form.error {
	height: 95px !important;
	background-color: #db3921 !important;
}

form.error .inner {
	height: 45px !important;
}

#login dl {
	margin: 0 0 0 20px;
}

#login dd {
	float: left;
}

#login ul {
	position: absolute;
	font-size: 0.857em;
	top: 20px;
	right: 65px;
}

#login li {
	margin-left: 20px;
	float: left;
}

#login a {
	color: #c6ebfb;
}

form.error a { color: #ffbf8b !important; }

#btn-close {
	position: absolute;
	top: 0;
	right: 5px;
	width: 25px;
	height: 25px;
	text-indent: -999em;
	overflow: hidden;
	background: url(../img/sprite.png) no-repeat 8px -35px;
}

/* logo
---------------------------------------------------------- */

#logo {
	border: none;
	position: absolute;
	bottom: 48px;
	left: 0;
	width: 238px;
	height: 64px;
	text-indent: -999em;
    /*top: 12px;*/
    margin:12px 0 0;
	overflow: hidden;
	background: transparent url(../img/logo.png) no-repeat 0 0;
}

/* navigation
---------------------------------------------------------- */

#nav {

}

/* navigation -> primary
---------------------------------------------------------- */

ul.primary {
	position: absolute;
	top: -33px;
	left: 0;
	width: 100%;
	background: url(../img/bg_nav.jpg) no-repeat 0 0;
}

ul.primary li {
	float: left;
}

ul.primary a {
	float: left;
	padding: 0 11px 0 9px;
	text-decoration: none;
	line-height: 33px;
	color: #7f868d;
	background: url(../img/bg_nav.png) no-repeat 100% -66px;
}

ul.primary a:visited { color: #7f868d; }

ul.primary a:hover {
	color: #0089c6;
}

ul.primary ul {
	position: absolute;
	left: 0;
	top: 33px;
}

ul.primary .selected {
	background: #fff url(../img/bg_nav.png) no-repeat 0 0;
}

ul.primary .no-border a { background: none; }

ul.primary .home {
	overflow: hidden;
	background-image: none;
}

ul.primary .home a { padding: 0 8px; }

ul.primary .ico-home {
	float: left;
	width: 20px;
	line-height: 33px;
	text-indent: -999em;
	background: url(../img/sprite.png) no-repeat -38px -151px;
}

ul.primary .selected .ico-home {
	width: 20px;
	background-position: 3px -151px !important;
}

ul.primary a:hover .ico-home { background-position: -78px -151px; }

ul.primary .selected a {
	color: #339fcd;
	background: url(../img/bg_nav.png) no-repeat 100% -33px;
}

/* navigation -> primary -> subnav
---------------------------------------------------------- */

ul.primary ul {
	width: 100%;
	font-size: 0.857em;
	border-bottom: 1px solid #e1e9ed;
}

ul.primary li.first a {
	padding-left: 0;
}

ul.primary ul a {
	color: #7f868d !important;
	line-height: 30px;
	background: url(../img/bg_nav.png) no-repeat 0 -99px !important;
}

ul.primary ul .no-border a { background: none !important; }

ul.primary ul .selected { background: none; }

ul.primary ul .selected a,
ul.primary ul .selected a:hover { color: #db3921 !important; }
ul.primary ul a:hover { color: #339fcd !important; }

/* secundary navigation
---------------------------------------------------------- */

ul.secundary {
	position: absolute;
	right: 0;
	bottom: 90px;
	display: none;
}

ul.secundary li {
	float: left;
	margin-left: 2px;
	font-size: 0.857em;
}

ul.secundary a {
	float: left;
	line-height: 30px;
	text-decoration: none;
	color: #999ea4;
	background: #fff url(../img/sprite_corners.png) no-repeat 0 100%;
}

ul.secundary a:hover {
	color: #339fcd;
}

ul.secundary .selected a {
	color: #db3921;
}

ul.secundary span {
	float: left;
	padding: 0 10px;
	cursor: pointer;
	background: url(../img/sprite_corners.png) no-repeat 100% 100%;
}

ul.secundary .login a {
	color: #fff;
	background-color: #53b5df;
}

ul.secundary .login a:hover { color: #fff; background-color: #0089c6; }

ul.secundary .error a { background-color: #db3921; }

ul.secundary .login span .icon {
	padding: 0 0 0 20px;
	background: url(../img/sprite.png) no-repeat 0 5px;
}


/* buttons
---------------------------------------------------------- */

a.button,
input.button {
	float: left;
	margin: 1em 10px 0 0;
	padding: 2px 10px;
	text-decoration: none;
	color: #98a9b2;
	background: #f7f7f7 url(../img/sprite.png) no-repeat 0 -80px;
	border: 1px solid #e4e9ea;
}

a.button:visited { color: #98a9b2; }

a.button:hover,
input.button:hover {
	color: #43a5cf;
	background-position: 0 -120px;
	background-color: #f2fafd;
	border: 1px solid #d6edf8;
}

input.button { overflow: visible; }

/* widgets
---------------------------------------------------------- */

.widget {
	position: relative;
}

/* widget -> rte
---------------------------------------------------------- */

.rte h2 {
	margin: 0 0 15px 0;
}

.rte p {
	margin: 0 0 1em 0;
}

.rte ul,
.rte ol {
	margin: 0;
	padding: 1em 0;
}

.rte ol {
	margin: 0 0 0 15px;
	list-style: decimal outside none;
}

.rte li {
	margin-bottom: 15px;
}

.rte ul li {
	padding-left: 15px;
	zoom: 1;
	background: url(../img/sprite.png) no-repeat -120px -68px;
}

.rte img {
}

.rte img.left {
	float: left;
}

.rte img.right {
	float: right;
	margin: 0 0 0 4px;
}

.rte .quote {
	margin-left: -10px;
	padding-left: 10px;
	text-indent: 15px;
	background: url(../img/sprite.png) no-repeat -159px -21px;
}

.rte .cite {
	font-weight: bold;
	font-size: 0.857em;
	color: #339fcd;
}

.rte .cite em {
	display: block;
	font-weight: normal;
	color: #7F868D;
}

/* widget -> rte -> checkboxed list
---------------------------------------------------------- */

ul li.check {
	position: relative;
	left: -5px;
	margin: 0;
	padding: 0 0 10px 30px;
	font-weight: bold;
	color: #339fcd;
	zoom: 1;
	background: url(../img/sprite.png) no-repeat -135px -42px;
}

ul li.check a {
	text-decoration: none;
	color: #339fcd;
}

ul li.check a:hover {
	text-decoration: underline;
}

/* widget -> rte -> highlight
---------------------------------------------------------- */

.rte .highlight {
	font-weight: bold;
	color: #339fcd;
}

/* columns
---------------------------------------------------------- */

.cols {
	padding-top: 40px;
}

.cols .last { margin-right: 0; }

.col {
	margin-right: 40px;
	float: left;
}

/* widget -> 1 col
---------------------------------------------------------- */

.col-1 {
	width: 280px;
}

.col-1 h3 {
	margin: 0 0 1.25em 0;
	font-size: 1.214em;
	color: #339fcd;
}

.col-1 .rte {
	padding-bottom: 40px;
}

/* widget -> 2 col
---------------------------------------------------------- */

.col-2 {
	width: 600px;
}


.col-2 .widget { border-bottom: 1px solid #e4e9ea; overflow: hidden; }
.col-2 .no-border {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none;
}

.col-2 .rte {
	margin: 0 0 20px 0;
	padding: 0 40px 35px 160px;
	zoom: 1;
	width: 400px;
}

.col-2 img.border-left,
.col-2 img.border-right {
	padding: 4px;
	border: 1px solid #d9e6f1;
}

.col-2 img.border-left {
	float: left;
	margin: 7px 20px 10px 0;
}

.col-2 img.border-right { 
	float: right;
	margin: 7px 0 10px 20px;
}

.col-2 h1,
.col-2 .widget h2 {
	position: absolute;
	top: 0;
	left: 0;
	width: 140px;
}

.col-2 h1 {
	top: -4px;
	font-size: 1.571em;
	line-height: 1.1em;
}

.col-2 h2 {
	font-size: 1.214em;
	line-height: 1.25em;
	color: #339fcd;
}

.col-2 h2 a { text-decoration: none; }

.col-2 blockquote {
	margin: 40px 80px 0 40px;
}

/* news
---------------------------------------------------------- */

.news {
	position: relative;
}

.entry {
	position: relative;
	margin: 0 0 20px 0;
	padding: 0 0 40px 160px;
    zoom: 1;
	border-bottom: 1px solid #E4E9EA;
}

div.last { border-bottom: none !important; }

.entry h2 {
	margin: 0 0 10px 0;
}

.entry .date {
	position: absolute;
	top: 0;
	left: 0;
	font-style: italic;
	color: #95a5b2;
}

.detail .date {
	position: static;
	top: auto;
	left: auto;
}

.detail .meta {
	margin: 0 0 10px 0;
	padding: 0 0 15px 0;
	border-bottom: 1px solid #E4E9EA;
}

.entry .widget,
.entry .rte {
	margin: 0;
	padding: 0 0 10px 0;
	border-bottom: none !important;
}

.entry .actions {
	padding: 0 0 20px 0 !important;
}

.entry .actions .button { margin-top: 0; }

.archive ul {
	border-top: 1px solid #e4e9ea;
}

.archive li {
	padding: 10px 0;
	border-bottom: 1px solid #e4e9ea;
}

/* widget -> header
---------------------------------------------------------- */

.header {
	position: relative;
	padding: 35px 20px 0 320px;
	height: 185px;
}

.header h1 {
	margin: 0 0 10px 0;
}

.header .button {
	margin: 0;
	padding: 0 3px 0 0;
	color: #fff;
	border: none;
	background: url(../img/sprite_buttons.png) no-repeat 100% -30px;
}

.header .button:visited { color: #fff; }

.header .button span {
	float: left;
	padding: 0 7px 4px 10px;
	line-height: 25px;
	cursor: pointer;
	background: url(../img/sprite_buttons.png) no-repeat 0 0;
}

.header .button:hover {
	color: #fff;
	border: none;
	background-position: 100% -90px;
}

.header .button:hover span { background-position: 0 -60px; }

.header .rte {
	font-size: 1.286em;
	line-height: 1.44em;
	color: #036ca1;
}

.header blockquote {
	color: #dc3a22;
}

.header blockquote .quote {
	margin-left: -15px;
	padding-left: 15px;
	margin-bottom: 0.4em;
	background-position: -180px 2px;
}

.header .cite {
	font-size: 0.714em;
	color: #1275a7;
}

.header .cite em {
	display: inline;
	color: #53b5df;
}

.quicklinks {
	position: absolute;
	bottom: 20px;
	right: 20px;
	font-size: 0.857em;
}

.quicklinks li {
	float: left;
	margin-left: 10px;
}

.quicklinks a {
	float: left;
	padding: 0 5px 0 0;
	line-height: 30px;
	text-decoration: none;
	color: #fff;
	background: url(../img/sprite_buttons.png) no-repeat 100% -150px;
}

.quicklinks a:visited { color: #fff; }

.quicklinks a span {
	float: left;
	padding: 0 5px 0 10px;
	cursor: pointer;
	background: url(../img/sprite_buttons.png) no-repeat 0 -120px;
}

.quicklinks a span .icon {
	background-position: 0 6px;
	padding: 0 0 0 24px;
}

.quicklinks a:hover span .icon { background-position: 0 -34px; }

.quicklinks a:hover { background-position: 100% -210px; }
.quicklinks a:hover span { background-position: 0 -180px; }

/* widget -> header -> tabs
---------------------------------------------------------- */

.header .tabs {
	position: absolute;
	bottom: 0;
	left: 11px;
	font-size: 0.857em;
}

.header .tabs li {
	float: left;
	margin-right: 2px;
	line-height: 30px;
}

.header .tabs a {
	float: left;
	padding: 0 5px 0 0;
	color: #fff;
	text-decoration: none;
	background: url(../img/sprite_buttons.png) no-repeat 100% -394px;
}

.header .tabs span {
	float: left;
	padding: 0 4px 0 9px;
	cursor: pointer;
	background: url(../img/sprite_buttons.png) no-repeat 0 -364px;
}

.header .tabs a:hover { background-position: 100% -454px; }
.header .tabs a:hover span { background-position: 0 -424px; }

.header .tabs .selected a,
.header .tabs .selected a:hover {
	color: #999ea4;
	background-position: 100% -334px;
}
.header .tabs .selected span,
.header .tabs .selected a:hover span { background-position: 0 -304px; }

/* widget -> local partners
---------------------------------------------------------- */

.local-partners {
	position: relative;
	height: 190px;
	padding: 30px 20px 0 640px;
	background: url(../img/bg_partners.jpg) no-repeat 0 0;
}

.local-partners h1 {
	margin: 0 0 12px 0;
	font-size: 1.571em;
}

#map {
	position: absolute;
	left: -25px;
	top: 20px;
	width: 620px;
	height: 260px;
	background: url(../img/map.png) no-repeat 0 0;
}

#map li {
}

#map li a {
	position: absolute;
	width: 14px;
	height: 17px;
	text-indent: -999em;
	overflow: hidden;
    cursor: default;
	background: url(../img/bg_pin.png) no-repeat 0 0;
}



/* widget -> imagelink
---------------------------------------------------------- */

.imagelink {
	margin-bottom: 15px;
	padding: 0 0 0 90px;
    zoom: 1;
	border-bottom: 1px solid #e4e9ea;
}

.imagelink h3 {
	margin-bottom: 10px;
}

.imagelink h3 a { text-decoration: none; }

.imagelink img {
	position: absolute;
	top: 0;
	left: 0;
}

/* widget -> local partners
---------------------------------------------------------- */

.partnerfinder {
    margin-bottom: 40px;
}

.partnerfinder h2 {
	margin: 0 0 15px 0;
}

.partnerfinder .map {
	position: relative;
	height: 154px;
	background: url(../img/bg_widget_partners.jpg) no-repeat 0 0;
}

.partnerfinder .map form {
	position: absolute;
	left: -15px;
	height: 100%;
	width: 310px;
	background: url(../img/map_widget.png) no-repeat 0 0;
}

.partnerfinder select {
	position: absolute;
	bottom: 20px;
	left: 35px;
	width: 240px;
}

/* partners
---------------------------------------------------------- */

.partners {
	float: right; 
}

.partners h2 {
	margin: 0 0 10px 0;
	font-size: 1.214em;
	color: #339fcd;
}

.partners ul {
	margin: 0 0 30px 0;
}

.partners li {
	position: relative;
    margin-bottom: 20px;
	background: none;
}

.partners .coordinates {
    clear: both;
    margin-bottom: 15px;
}

.partners li .logo {
    clear: right;
    position: relative;
    float: right;
    margin: 0 0 10px 10px;
    padding: 0;
/*	position: absolute;
	top: 0;
	right: 0;*/
}

.partners li .fn {
	font-weight: bold;
	text-decoration: none;
	color: #5b6268;
}

.partners .button {
	padding: 0 5px 0 0;
	height: 30px;
	font-size: .857em;
	color: #5b6268 !important;
	border: none;
	background: url(../img/sprite_buttons.png) no-repeat 100% -564px;
}

.partners .button span {
	float: left;
	padding: 0 5px 0 0;
	height: 30px;
	line-height: 30px;
	background: url(../img/sprite_buttons.png) no-repeat 0 -534px;
}

.partners .button .icon {
	padding-left: 30px;
	background: url(../img/sprite.png) no-repeat 8px -315px;
}

.partners .button:hover {
	color: #fff !important;
	border: none;
	background-position: 100% -210px;
}

.partners .button:hover span {
	background-position: 0 -180px;
}

.partners .button:hover .icon {
	background-position: 8px -355px;
}

/* widget -> local partners
---------------------------------------------------------- */

.upcomingcourses {

}

.upcomingcourses h2 {
    margin: 0 0 15px;
}

.upcomingcourses h3 {
    margin-bottom: 10px;
    color: #339FCD;
}

.upcomingcourses li {
    margin: 0 0 10px 0;
    padding: 0 0 15px 0;
    border-bottom: 1px solid #E4E9EA;
}

.upcomingcourses li.last { border-bottom: none; }

.upcomingcourses .date {
}

.upcomingcourses .partner {
    font-size: .857em;
    font-weight: bold;
}

.upcomingcourses .location {
    font-size: .857em;
    font-style: italic;
    color: #B7C6C9;
}

.upcomingcourses .extra {
    margin: 10px 0 0 0;
    font-size: .857em;
}

.col-2 .upcomingcourses {
    padding-left: 160px;
}

#filterform fieldset {
    padding: 0;
}

/* downloads
---------------------------------------------------------- */

.rte li.download {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid #e4e9ea;
	background: none;
}

a.document,
a.locked,
a.document-download,
a.software,
a.video {
    clear: left;
    float: left;
    width: 360px;
	color: #999ea4;
    margin: 3px 0 5px 0;
	padding: 0 0 5px 30px;
	background: url(../img/sprite.png) no-repeat 0 0;
}

a.document { background-position: 3px -400px; }
a.locked { background-position: 3px -460px; }
a.document-download { background-position: 0 -580px; }
a.software { background-position: 0 -640px; }
a.video { background-position: 0 -700px; }

/* widget -> faq
---------------------------------------------------------- */

.faq dl {

}

.faq dt {
	position: relative;
	padding: 0 0 0 160px;
	font-size: 1.214em;
	color: #339fcd;
}

.faq dd {
	position: relative;
	margin-top: 10px;
}

.faq .gutter {
	position: absolute;
	left: 0;
	top: 0;
	color: #95a5b2;
}

.faq dt .gutter {
	font-size: 0.823em;
}

/* language
---------------------------------------------------------- */

#lang {
	position: absolute;
	display: none;
	top: 201px;
	left: 13px;
}


/* main
---------------------------------------------------------- */

#main {

}

.subnav {
	padding-top: 30px;
}

/* content
---------------------------------------------------------- */

#content {

}



/* aside
---------------------------------------------------------- */

#aside {

}

/* skip to nav links
---------------------------------------------------------- */

#skip {
	position: absolute;
	margin: 0;
	top: 0;
	left: 0;
}

#skip li{
	text-indent: -999em;
}

/* footer
---------------------------------------------------------- */

#footer {
	position: relative;
	margin: 30px 0 0 0;
	font-size: 0.857em;
	color: #adb8be;
	border-top: 1px solid #e4e9ea;
	background: url(../img/bg_footer.png) no-repeat 100% 0;
}

#footer ul {
	position: absolute;
	top: 0;
	right: 0;
}

#footer li {
	float: left;
}

#footer li a {
	float: left;
	padding: 0 7px;
	text-decoration: none;
	color: #adb8be;
	background: url(../img/sprite_buttons.png) no-repeat 100% -272px;
}

#footer li a span {
	float: left;
	padding: 0 3px 0 10px;
	line-height: 32px;
	cursor: pointer;
	background: url(../img/sprite_buttons.png) no-repeat 0 -240px;
}

#footer li span .icon {
	padding: 0 0 0 20px;
	background: url(../img/sprite.png) no-repeat 0 0;
}

#footer li span .ico-about { background-position: 0 -194px; }
#footer li span .ico-contact { background-position: 0 -230px; }
#footer li span .ico-terms { background-position: -1px -273px; }


#footer li a:hover {
	color: #5b6268;
}

.marlon { display: none;}

.hide {
	position: absolute;
	display: block;
	padding: 0 !important;
	left: -9999px !important;
	left: -9999px !important;
	font-size: 0px;
	height: 0px !important;
	line-height: 0px !important;
	background: none !important;
}

.hidden {
	text-indent: -9999px;
}

/* browser fixes
---------------------------------------------------------- */

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

.clearfix {display: inline-block;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

