/* unified margins and paddings */

html,body,h1,h2,h3,h4,h5,h6,
hr,p,ul,ol,li,dl,dt,dd,form,fieldset,legend,input,select,button,td {
	margin: 0;
	padding: 0;
}

/* hidden elements */

h1,legend {
	display: none;
}


/* common element styles */

html,body {
	padding-bottom: 1em;
	color: #000;
	background: #fff;
}

ul,li,dl,dt,dd {
	list-style-type: none;
}

a {
	color: #c03;
	background: transparent;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

fieldset {
	border: none;
}

label,input,select {
	vertical-align: middle;
}

input,select,textarea {
	color: #000;
	background: #fff;
	border: 0.091em solid #ccc;
}

button {
	color: #000;
	border: none;
	background: transparent;
	vertical-align: middle;
	cursor: pointer;
}

img {
	border: none;
	vertical-align: middle;
}

button img {
	display: block;
	margin: 0;
	padding: 0;
}

hr {
	margin: 0;
	padding: 0.727em 0 0;
	line-height: 1em;
	font-size: 1em;
	border: none;
	color: #fff;
	background: #fff;
}

h2 {
	padding-top: 0.625em;
	padding-bottom: 0.455em;
}

h3, h4 {
	padding: 0.091em 0;
}

p {
	padding-bottom: 0.909em;
}

cite {
	color: #999;
	background: transparent;
}

blockquote cite {
	display: block;
	padding-top: 0.455em;
	color: #999;
	background: transparent;
}


/* fonts */

html {
	font-size: 100%;
	line-height: 100%;
}

body {
	font: 68.75%/100% Verdana, Helvetica, Sans-Serif;
}

body.minus2 {
	font-size: 56.25%;
}

body.minus1 {
	font-size: 62.5%;
}

body.plus1 {
	font-size: 75%;
}

body.plus2 {
	font-size: 81.25%;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 1em;
	line-height: 1em;
}

h2 {
	font-size: 1.364em;
	line-height: 1.273em;
}

h3, h4 {
	font-size: 1em;
	line-height: 1.364em;
}

input,select,button,textarea {
	font: 1em/1em Verdana, Helvetica, Sans-serif;
}

textarea {
	line-height: 1.3em;
}

table,td {
	font-size: 1em;
	line-height: 1.4em;
}

cite {
	font-size: 0.909em;
}


/* common class selectors */

.highlight {
	font-weight: bold;
}

a.default {
	padding-left: 1.182em;
	background: url('../gfx/arrow/single-small.gif') 0 0.364em no-repeat;
}

a.back {
	padding-left: 1em;
	background: url('../gfx/arrow/single-small-reverse.gif') 0 0.364em no-repeat;
}

a.continue,.more a {
	padding-left: 1.182em;
	background: url('../gfx/arrow/double-small.gif') 0 0.364em no-repeat;
}

.checkbox {
	color: #000;
	background: transparent;
	border: none;
	height: 1.2em;
	width: 1.2em;
}

.more {
	padding: 0.818em 0 0 !important;
}

.left {
	float: left;
}

.right {
	float: right;
}

.clearBoth {
	clear: both;
}

.clearLeft {
	clear: left;
}

.clearRight {
	clear: right;
}

.noFloat {
	float: none !important;
	width: auto !important;
}

.corner,.shadow {
	position: absolute;
}

.corner.nw,.shadow.nw {
	top: 0;
	left: 0;
}

.corner.ne,.shadow.ne {
	top: 0;
	right: 0;
}

.corner.sw,.shadow.sw {
	left: 0;
	bottom: 0;
}

.corner.se,.shadow.se {
	right: 0;
	bottom: 0;
}

.wysiwyg h3 {
	padding: 0.727em 0 0.636em;
	font-size: 1.182em;
}

.wysiwyg ul {
	padding: 0 0 0.818em 2em;
}

.wysiwyg li {
	list-style-type: disc;
	padding-bottom: 0.182em;
}

.sweep {
	display: none !important;
}

.margin h2 {
	padding-bottom: 0.5em;
}

.margin p {
	padding-bottom: 0.364em;
}

.margin dd p {
	padding: 0;
}

.address span {
	display: block;
}

.hlprLineBreak {
	padding-bottom: 0.909em;
}

noscript.intro p {
	padding: 2em 0 1em;
	text-align: center;
	font-weight: bold;
	font-style: italic;
	color: #666;
	background: transparent;
}


/* document structure */

#wrapper {
	margin: auto;
	width: 90em;
	font-size: 1em;
	line-height: 1.4em;
}

.margin.left {
	width: 22.273em;
	border-bottom: 0.091em solid #fff;
}

.meta,.main {
	float: right;
	width: 67.727em;
}

.meta {
	overflow: hidden;
	position: relative;
	height: 6.727em;
	color: #000;
	background: #fff;
}

.content,.margin.right {
	float: left;
	width: 44.727em;
	margin-top: 1.364em;
}

.content.padding {
	width: 41.091em;
	padding: 0 1.818em;
}

.margin.right {
	width: 21.182em;
}


/* basic elements */

.keyvisual {
	position: relative;
	color: #fff;
	height: 16.546em;
	background: #ce000a url('../gfx/keyvisual/shadow-e.png') 100% 0 repeat-y;
	border-left: 0.091em solid #ccc;
}

.keyvisual .image {
	z-index: 0;
	position: absolute;
	bottom: 0;
}

.keyvisual .corner {
	z-index: 1;
}

.keyvisual form {
	position: absolute;
	top: 10.8em;
	left: 46em;
}

.keyvisual select {
	display: block;
	width: 16em;
}

#quicksearch,#fontsize {
	position: relative;
	height: 3.909em;
	margin-top: 2.818em;
	padding: 0 0 0 1.546em;
	color: #000;
	background-color: #ddd;
}

#quicksearch dt {
	padding-top: 0.182em;
}

#quicksearch label {
	font-weight: bold;
}

#quicksearch span {
	display: none;
}

#quicksearch input {
	padding: 0.364em;
	width: 10.636em;
}

#quicksearch button {
	bottom: 0.364em;
	right: 0.818em;
}

#fontsize {
	height: 3em;
	margin: 0;
	padding-top: 0.909em;
}

#fontsize h2 {
	display: inline;
	padding: 0;
	font-size: 1em;
	line-height: 1.4em;
	font-weight: normal;
	vertical-align: middle;
}

#fontsize ul,#fontsize li {
	display: inline;
	padding-left: 0.273em;
}


/* navigations */

.meta ul {
	float: right;
	display: inline;
	margin-top: 2.2em;
	font-size: 0.909em;
	line-height: 0.909em;
}

.meta li {
	display: inline;
	padding: 0 0.7em 0 1em;
	border: solid #333;
	border-width: 0 0 0 0.1em;
}

.meta li.first {
	border-width: 0;
}

.meta a {
	color: #333;
	background-color: transparent;
}

.meta .active {
	color: #cf000b;
	background: transparent;
}

.language {
	margin-right: 2.1em;
}

.language li {
	margin-left: 0.3em;
	padding: 0.1em 0;
	border-width: 0.2em 0.1em 0.3em;
	border-color: #ccc;
	color: #666;
	background-color: #ccc;
}

.language a {
	padding: 0.1em 0.2em 0.2em 0.5em;
	border: 0.1em solid #fff;
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
}

.language .last a {
	padding-right: 0.5em;
}

.meta .logos {
	float: none;
	position: absolute;
	left: 0;
	bottom: 0.546em;
}

.meta .logos li {
	border: none;
	padding: 0 0 0 1em;
}

.navigation {
	overflow: hidden;
	position: relative;
	height: 3.364em;
	padding-right: 1.818em;
	border-left: 0.091em solid #ccc;
}

.navigation ul {
	height: 3.364em;
	color: #000;
	background: #ddd;
}

.navigation li {
	float: left;
}

.navigation li.backToMissio {
	float: right;
}

.navigation a {
	float: left;
	display: block;
	padding: 1em 1em;
	padding-left: 1.818em;
	color: #000;
	background: transparent url('../gfx/arrow/navigation.png') 0.727em 1.364em no-repeat;
}

.navigation a:hover,.navigation a.active {
	background-color: #ccc;
	background-image: url('../gfx/arrow/navigation-active.png');
}

.navigation li.backToMissio a {
	padding-left: 4.091em;
	background: #eee url('../gfx/arrow/navigation-missio.png') 0 55% no-repeat;
}

.navigation li.backToMissio a:hover {
	background: #ddd url('../gfx/arrow/navigation-missio-active.png') 0 55% no-repeat;
}

.breadcrumb {
	margin: 1em 2em 0 0;
	padding: 0.364em 2em;
	border: 0.091em solid #ccc;
	border-width: 0.091em 0;
	color: #666;
	background: transparent;
}

.breadcrumb h2, .breadcrumb a, .breadcrumb span {
	font-size: 0.909em;
	white-space: nowrap;
}

.breadcrumb ol,.breadcrumb li {
	display: inline;
}

.breadcrumb h2 {
	display: inline;
	line-height: 1.4em;
	font-weight: normal;
}

.breadcrumb a,.breadcrumb span {
	padding-left: 1em;
	color: #666;
	background: transparent url('../gfx/arrow/double-small-grey.gif') 0.2em 0.4em no-repeat;
}

.lefthandNavigation ul a {
	display: block;
	border-bottom: 0.091em solid #ddd;
}

.lefthandNavigation ul a:hover {
	color: #000;
}

.lefthandNavigation ul span {
	display: block;
	padding: 0.546em 0.182em 0.546em 1.455em;
	border: solid #fff;
	border-width: 0.091em 0;
	color: #000;
	background: #fff url('../gfx/arrow/navigation-left-0.png') 0 0.909em no-repeat;
}

.lefthandNavigation ul .active span, .lefthandNavigation ul a:hover span {
	color: #000;
	background: #eee url('../gfx/arrow/navigation-left-1.png') 0 0.909em no-repeat;
}

.lefthandNavigation ul ul span {
	padding-left: 2.909em;
	color: #000;
	background: #eee url('../gfx/arrow/navigation-left-1.png') 1.455em 0.909em no-repeat;
}

.lefthandNavigation ul ul .active span,.lefthandNavigation ul ul a:hover span  {
	color: #000;
	background: #ddd url('../gfx/arrow/navigation-left-2.png') 1.455em 0.909em no-repeat;
}

.lefthandNavigation .active span {
	font-weight: bold;
}

.lefthandNavigation ul ul ul .active span {
	color: #000;
	background-color: #c8c8c8;
	font-weight: normal;
}


/* box */

.margin .box {
	position: relative;
}

.margin.left h2 {
	padding-left: 1.091em;
	padding-right: 1.091em;
}

.margin.right .box {
	border-bottom: 0.091em solid #fff;
}

.margin.right h2 {
	padding-left: 1.25em;
	padding-right: 1.25em;
}

.margin .box .body {
	padding: 0 1.455em 0.909em;
}

.margin .box.wysiwyg .body {
	padding-top: 0.909em;
}

.margin.right .box .body {
	padding-left: 1.818em;
	padding-right: 1.818em;
}

.box.filledBody .body {
	padding-top: 1.455em;
}

.box.filled,.box.filledBody .body {
	color: #000;
	background: #f0f0f0 !important;
}

.box .links {
	padding-bottom: 1em !important;
	border-bottom: 0.091em solid #ccc !important;
}

.box ul.links.more,.box.filled .links,.box.filledBody .links {
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

.box .links li {
	padding: 0.091em 0 0.273em;
}

.content .box {
	padding: 0.546em 1.818em;
}

.content.padding .box {
	padding: 0.546em 0;
}


/* basic listing elements */

.record {
	border-bottom: 0.091em solid #ddd;
}

.record.noseperator {
	border: none;
}

.recordTitle {
	padding-top: 0.346em;
	font-size: 1em;
	line-height: 1.4em;
	background: transparent url('../gfx/dot/ddd.gif') 0 1em repeat-x;
	text-align: center;
}

.recordTitle span {
	padding: 0 0.455em;
	color: #000;
	background: #fff;
}

.record .item {
	padding: 1em 0;
	border-bottom: 0.091em solid #ddd;
}

.record .item.last {
	border-bottom: none;
}

.record span {
	font-size: 0.909em;
	color: #999;
	background: transparent;
}

.filled .record span,.filledBody .record span {
	color: #666;
	background: transparent;
}

.record .wysiwyg h3 {
	padding-top: 0;
}

.record .wysiwyg p {
	padding: 0;
}

.margin .record .item {
	padding: 0.818em 0 0.546em;
}

.margin .record .item.first {
	padding-top: 0;
}

.keyvalue dt {
	font-weight: bold;
	padding: 0.546em 1.818em 0.636em;
}

.keyvalue.box .body {
	padding-top: 0.364em;
	padding-bottom: 0.455em;
	color: #666;
	background: inherit;
}


/* form elements */

.formSteps {
	padding: 1em 0 1.455em;
	color: #666;
	background: transparent;
}

.formSteps ul {
	padding-bottom: 0.455em;
	border-bottom: 0.091em solid #ddd;
}

.formSteps li {
	display: inline;
	padding-left: 3em;
}

.formSteps li.first {
	padding-left: 2em;
}

.formSteps .active {
	font-weight: bold;
}

.formSteps em {
	font-weight: bold;
	font-style: normal;
}

fieldset {
	position: relative;
	padding-bottom: 0.364em;
}

fieldset .wysiwyg {
	padding-top: 0.727em;
}

.margin fieldset {
	padding-top: 0.909em;
}

.content fieldset {
	margin-top: 0.727em;
	padding: 1em;
	color: #000;
	background: #f9f9f9;
	border: 0.091em solid #ddd;
}

.content fieldset fieldset {
	margin-top: 0;
	padding: 0;
	border: none;
}

.content .button {
	border-color: #fff;
	color: #000;
	background-color: #fff;
}

.content fieldset.button {
	padding-left: 18.364em;
}

.content .fieldset {
	padding-top: 0.727em;
}

.content fieldset.noCaption {
	padding-top: 0.364em;
}

.fieldset dt {
	position: relative;
	float: left;
	width: 17em;
}

.fieldset dt.noFloat {
	padding-bottom: 0.364em;
}

.fieldset dt span {
	position: absolute;
	right: 0;
}

.fieldset dd {
	position: relative;
	padding: 0 0 0.455em 17.364em;
}

.fieldset dd.unshift {
	padding-left: 0;
}

.button {
	padding-bottom: 1em;
}

.content form .links {
	margin-top: 1em;
	padding: 0.546em 0 0 !important;
	border-bottom: none !important;
	border-top: 0.091em solid #ccc !important;
}

.fieldset fieldset li {
	line-height: 1.5em;
}

.fieldset fieldset.inline li {
	padding-right: 1em;
	display: inline;
}

.fieldset .text,.fieldset textarea {
	width: 23.091em;
	width: 21em;
	padding: 0.182em;
}

.fieldset .period .text {
	width: 7em;
}

.fieldset .period .text.from {
	float: left;
}

.fieldset .period label {
	float: left;
	padding: 0.182em 0.727em;
	width: 5em;
}

.fieldset textarea {
	height: 8em;
}

form .scrollable {
	border: 0.091em solid #ccc;
	color: #000;
	background: #fff;
	height: 14em;
	padding: 0.182em;
	overflow: scroll;
}

form .scrollable h3 {
	font-size: 100%;
}

.fieldset select {
	width: 23.636em;
	width: 21.546em;
}

.fieldset .expiry select {
	width: auto !important;
}

.fieldset .expiry .to {
	margin-left: 0.455em !important;
}

.fieldset dd .note {
	padding: 0;
	font-size: 80%;
	color: #666;
	background: transparent;
}

.content .button button {
	padding: 0.182em 0;
	width: 10.546em;
}

.content .button .submit {
	color: #fff;
	background: #999;
}

.content .button .reset {
	color: #666;
	background: #ccc;
}

.content .button .backButton {
	float: left;
	width: 10.546em;
	margin-right: 0.455em;
	padding: 0.182em 0;
	text-align: center;
	color: #666;
	background: #ccc;
}

.content .button .forwardButton {
	float: right;
	width: 10.546em;
	margin-left: 0.455em;
	padding: 0.182em 0;
	text-align: center;
	color: #fff;
	background: #999;
}

.margin .fieldset dt {
	width: 5em;
}

.margin .fieldset dd {
	padding: 0 0 0.455em 5.364em;
}
.margin .fieldset .text {
	width: 11em;
}

.margin button {
	position: absolute;
	right: 0.182em;
	bottom: 0.546em;
}

.response {
	padding: 1em 0;
}

.response.error {
	color: #000;
	background: url('../gfx/icon/error.gif') 1em 1.363em no-repeat;
}

.response.success {
	color: #000;
	background: url('../gfx/icon/success.gif') 1em 1.363em no-repeat;
}

.response p {
	padding: 0.363em 0.909em 0.546em 3em;
	border-left: 0.091em solid #ddd;
}

.response.error p {
	color: #f00;
	background: transparent;
}

.fieldset dt span.invalid {
	color: #f00;
	background: transparent;
}

.dataList {
	margin-top: 0.727em;
	padding: 1em 1em 0.546em;
	color: #000;
	background: #f9f9f9;
	border: 0.091em solid #ddd;
}

.dataList h3 {
	padding: 0 0 1em;
}

.dataList dt {
	width: 15em;
}

.dataList dd {
	padding: 0 0 0.455em 15.364em;
	color: #666;
	background: transparent;
}

.dataList p.indent {
	padding: 0.909em 0 0.455em 15.364em;
}


/* toolbar, pagination and scrolling */

.toolbar {
	padding-bottom: 0.364em;
}

.toolbar ul {
	margin-top: 0.546em;
	height: 2.182em;
	border-bottom: 0.091em solid #ddd;
}

.toolbar li {
	float: right;
	display: inline;
	padding-left: 1em;
}

.toolbar li a:hover {
	text-decoration: none;
}

.toolbar li.index a:hover,
.toolbar li a:hover span {
	text-decoration: underline;
}

.toolbar .index {
	float: left;
	padding: 0.091em 0 0;
}

.pagination {
	position: relative;
	height: 2em;
	padding: 0.546em 0 0;
}

.pagination.top {
	border-bottom: 0.091em solid #ddd;
}

.pagination span {
	color: #999;
	background: transparent;
}

.pagination ul {
	position: absolute;
	top: 0.546em;
	right: 0;
}

.pagination li {
	display: inline;
	color: #c03;
	background: transparent;
}

.pagination a {
	font-weight: bold;
	color: inherit;
	background: #d7d7d7;
	border: solid #d7d7d7;
	border-width: 0.091em 0.455em 0.182em;
}

.scrolling {
	border-top: 0.091em solid #ccc;
	position: relative;
}

.scrolling li {
	padding: 0.546em 0;
}

.scrolling .previous,.scrolling .next {
	position: absolute;
	top: 0;
}

.scrolling .previous {
	left: 0;
}

.scrolling .next {
	right: 0;
}

.scrolling .overview {
	text-align: center;
}


/* teaser */

.content .teaser {
	margin-left: 0.091em;
	padding-bottom: 1em;
}

.margin .teaser {
	position: relative;
	padding: 0;
	border-bottom: 0.091em solid #fff;
}

.content .teaser {
	padding: 0 0 1em;
}

.content .teaser h2 {
	padding: 0 1.25em 0.455em;
}

.teaser .item {
	float: left;
	display: inline;
	width: 22.364em;
}

.teaser .item span {
	padding: 0 1.818em;
}

.teaser .odd {
	width: 22.273em;
}

ul.teaser .even {
	margin-left: -0.091em;
}

.teaser .even img {
	margin-left: 0.182em;
}

.teaser .body {
	padding: 0.546em 1.818em;
}

.teaser .odd .body {
	border-right: 0.091em solid #ccc;
}

.teaser .even .body {
	border-left: 0.091em solid #ccc;
}

.margin .teaser .wysiwyg {
	padding-bottom: 0.727em;
}

.teaser.bottom {
	position: relative;
}

.teaser.bottom .item {
	padding-bottom: 8.636em
}

.teaser.bottom img {
	position: absolute;
	bottom: 0;
}

.teaser.bottom .even img {
	right: 0.091em;
}

.content .teaser img {
	padding-bottom: 0.727em;
}

.margin .teaser .body {
	padding-bottom: 1.455em;
	color: #000;
	background: #f0f0f0 !important;
}

.teaserList .item {
	overflow: hidden;
	float: left;
	display: inline;
	width: 22.364em;
	height: 7.546em;
	padding: 0.818em 0;
}

.content.padding .teaserList .item {
	width: 20.546em;
}

.content .projectList {
	padding-left: 0;
	padding-right: 0;
}

.teaserList .imageText .image {
	padding: 0;
}

.teaserList img {
	float: left;
	display: inline;
	margin-right: 0.818em;
}

.teaserList .text {
	margin-right: 0.818em;
}

.projectList .text{
	width: 13.182em !important;
}

.content.padding .projectList .text{
	width: 11.364em !important;
}


/* quotes */

blockquote {
	margin: 0;
	padding: 0 0 0.909em;
	font-style: italic;
}

blockquote.left,
blockquote.right {
	width: 16em;
}

blockquote .pre {
	margin-top: -0.091em;
	margin-right: 0.182em; 
}

blockquote .post {
	margin-top: -0.091em;
	margin-left: 0.182em; 
}

blockquote.left p,
blockquote.right p {
	margin-top: 0.364em;
	padding: 0.636em 0.909em 0.909em;
	color: #666;
	background: #eee;
}

blockquote.left {
	margin-right: 1.182em; 
}

blockquote.right {
	margin-left: 1.182em; 
}