/**************************************
 * STRUCT
 **************************************/

/* Body */

body {
	margin: 0;
	padding: 0 0 20px 0;
	font-family: verdana, arial, sans-serif;
	font-size: 12px;
	line-height: 18px;
	color: #000000;
	background-color: #FFFFFF;
    text-align: center;
}

/* Main container */

div#main {
	width: 900px;
	margin: 0 auto;
	border: none;
}

/* Left container */

div#left {
    float: left;
	width: 220px;
	margin: 0;
    text-align: left;
}

/* Right container */

div#right {
    float: left;
	width: 670px;
	padding-left: 10px;
	margin: 0;
    text-align: left;
}
div#right h1 {
	 padding-left: 0 !important;
}

/* Center container */

div#center {
	padding: 0 10px;
	text-align: left;
}
div#center h1 {
	 padding-left: 0 !important;
}
div#center h2 {
	 background: url('/img/icono-info.png') no-repeat scroll 0% 100% transparent; padding-left: 24px;
}
div#center ul {
    list-style: none;
}

/* Foot container */

div#foot {
    clear: both;
    border-top: 2px solid #CCCCCC;
}

/**************************************
 * ELEMENTS
 **************************************/

/* Links */

a, a:link, a:visited {
    font-weight: bold;
	text-decoration: underline;
	color: #1558A7;
}
a:hover, a:active {
	color: #F38619;
}
a.arrow, a.arrow:link, a.arrow:visited {
    line-height: 12px;
    font-size: 12px;
    font-weight: normal;
    text-decoration: none;
    padding-left: 16px;
    background: url(/img/arrow-off.gif) left bottom no-repeat;
    margin-left: 10px;
}
a.arrow:hover, a.arrow:active {
    background: url(/img/arrow-on.gif) left bottom no-repeat;
}
a img {
	border: none;
}

/* Headers */

h1 {
	color: #909090;
	font-size: 18px;
	font-weight: bold;
	font-variant: small-caps;
	padding-left: 24px;
	background-position: left;
	background-repeat: no-repeat;
}
h2 {
	color: #606060;
	font-size: 14px;
	font-weight: bold;
	font-variant: small-caps;
}
h3 {
	color: #999999;
	font-size: 14px;
	font-weight: bold;
}

/* Help */

span.help {
	color: #666666;
	font-size: 11px;
}

/* Text */

p.tip {
	background: url(/img/bombilla.gif) left top no-repeat;
	padding-left: 24px;
	margin-left: 10px;
}

p.info {
	padding-left: 24px;
	margin-left: 10px;
}

/**************************************
 * COMPONENTS
 **************************************/

/* Header */

div#header {
    text-align: left;
}
div#header div.logo {
    float: left;
    margin-right: 15px;
}
div#header div.logo img {
    height: 120px;
	margin: 0;
	border: 0;
}
div#header a {
	text-decoration: none;
	color: inherit;
}
div#header p {
	color: #909090;
	font-size: 24px;
	font-weight: bold;
	font-variant: small-caps;
	padding-left: 24px;
	background-position: left;
	background-repeat: no-repeat;
	padding-top: 15px;
    margin-bottom: 10px;
	text-transform: lowercase;
}
div#header p span {
    font-size: 0.5em;
    font-weight: bold;
    color: #D0D0D0;
}
div#header div.mini-logo {
    float: left;
    margin-right: 10px;
    text-align: center;
    color: #D0D0D0;
    text-transform: lowercase;
    font-weight: bold;
}
div#header div.tren:hover {
    color: #9E1900;
}
div#header div.metro:hover {
    color: #103A8D;
}
div#header div.autobus:hover {
    color: #2A7B1A;
}
div#header div.bici:hover {
    color: #AA8702;
}
div#header hr {
    clear: both;
    visibility: hidden;
}

/* Menu */

div#left div.menu {
	min-height: 50px;
	background: url(/img/background-menu.png) center bottom no-repeat;
    padding: 0 0 10px 10px;
    margin-bottom: 20px;
}
div#left div.menu a {
    text-decoration: none;
}
div#left div.menu ul {
    list-style: none;
    padding: 0 0 0 30px;
    margin: 0 0 10px 0;
}
div#left div.menu ul.compact {
    display: none;
}
div#left div.menu ul li {
    padding: 0;
    margin: 0;
	float: left;
	min-width: 80px;
}
div#left div.menu p.item {
    padding: 3px;
    margin: 0 0 0 5px;
	float: left;
	min-width: 55px;
}
div#left div.menu hr {
	clear: both;
	visibility: hidden;
}
div#left div.menu h2 {
    padding-left: 24px;
    background: no-repeat left bottom;
}
div#left div.menu h2.autobus {
    background-image: url(/img/parada-autobus.png);
}
div#left div.menu h2.tren {
    background-image: url(/img/parada-tren-cercanias.png);
}
div#left div.menu h2.metro {
    background-image: url(/img/parada-metro.png);
}
div#left div.menu h2.bici {
    background-image: url(/img/parada-bici.png);
}
div#left div.menu h2.enlaces {
    background-image: url(/img/cursor.png);
}

/* Map */

div#map {
    height: 480px;
    border: 2px solid #CCCCCC;
}

/* Marker window */

div.marker-window h5 {
	color: #909090;
	font-size: 14px;
	font-variant: normal;
    padding-left: 24px;
    background: no-repeat left bottom;
}
div.marker-window h5.autobus {
    background-image: url(/img/parada-autobus.png);
}
div.marker-window h5.tren {
    background-image: url(/img/parada-tren-cercanias.png);
}
div.marker-window h5.metro {
    background-image: url(/img/parada-metro.png);
}
div.marker-window h5.bici {
    background-image: url(/img/parada-bici.png);
}

/* Lines */

span.linea {
    padding: 3px 4px;
    font-weight: bold;
    color: #FFFFFF;
}
span.linea a {
	color: white !important;
	text-decoration: none !important;
}
span.linea a:hover, span.linea a:active {
	text-decoration: underline !important;
}
span.tren {
    background-color: #9E1900;
}
span.metro {
    background-color: #103A8D;
}
span.autobus {
    background-color: #2A7B1A;
}

/* Lines list */

p.listado-lineas {
    line-height: 25px;
}
p.listado-lineas span {
    padding: 3px 4px;
    margin-right: 3px;
    font-weight: bold;
    color: #FFFFFF;
}
p.listado-lineas span.tren {
    background-color: #9E1900;
}
p.listado-lineas span.metro {
    background-color: #103A8D;
}
p.listado-lineas span.autobus {
    background-color: #2A7B1A;
}

/* Transport map */

p.center {
	text-align: center;
}
p.center img {
	width: 800px;
}

/* Contact form */

form#form-contact {
	margin: 10px;
	padding: 10px 20px;
	border: 1px solid #CCCCCC; 
	background-color: #FAFAFA; 
}
form#form-contact label {
	font-weight: bold;
	margin: 5px 0;
}
form#form-contact input {
	width: 250px;
	padding: 2px;
	border: 1px solid #C0C0C0;
	color: #606060;
}
form#form-contact input:focus {
	background-color: #FFFFCC;
}
form#form-contact textarea {
	width: 400px;
	height: 150px;
	padding: 2px;
	border: 1px solid #C0C0C0;
	color: #606060;
}
form#form-contact textarea:focus {
	background-color: #FFFFCC;
}
form#form-contact input.button { 
	width: auto;
	margin: 0; 
	padding: 4px 6px; 
	border: 1px solid #C0C0C0;
	font-weight: bold; 
	background: #FFFFFF; 
	color: #606060;	
}
form#form-contact input.button:focus {
	background: #FFFFFF;
}
form#form-contact input.button:hover {
	color: #C0C0C0;
	background: #606060;
}
p.ok {
	margin: 0 10px;
	border: 1px solid #00CC00;
	background-color: #D0FDD0;
	color: #00CC00;
	font-weight: bold;
	padding: 10px 20px;
}
p.error {
	margin: 0 10px;
	border: 1px solid #CC0000;
	background-color: #FDD0D0;
	color: #CC0000;
	font-weight: bold;
	padding: 10px 20px;
}

/* Credits */

div.agradecimientos {
	float: left;
	min-width: 400px;
}

/* Foot */

div#foot p.links {
	font-weight: bold;
	color: #999999;
}
div#foot p.links a, div#foot p.links a:link, div#foot p.links a:visited {
	color: #999999;
	text-decoration: none;
}
div#foot p.links a:hover, div#foot p.links a:active {
	color: #CCCCCC;
	text-decoration: underline;
}
div#foot p.foot {
	font-size: 10px;
	color: #606060;
}
div#foot p.foot a {
	font-weight: normal;
	text-decoration: none;
}
div#foot hr {
	border: 0;
	height: 1px;
	color: #999999;
	background-color: #999999;
	width: 50%;
}
