/* BODY */
body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.9em;
  line-height: 1.2em;
  color: #ccc;
  background: #202020 url(../img/bg_header.jpg) repeat-x top left ;
  position: relative;
}
img { border: 0; }
a { color: #ccc; text-decoration: none; }
a:hover { color: #903; text-decoration: underline; }



/* suppression des bordures sur les liens */
a:active { outline:none; }
:focus { -moz-outline-style:none; }



/* GENERIQUE */
.mtop25 { margin-top: 25px; }
.mtop50 { margin-top: 50px; }
.mbot25 { margin-bottom: 25px; }
.mtop10 { margin-top: 10px; }
.mleft50 { margin-left: 50px; }
.mright20 { margin-right: 20px; }
.mright30 { margin-right: 30px; }
.gras { font-weight: bold; }
.noir { background: #202020; }
.centre { text-align: center; }
.no_mbot { margin-bottom: 0; }
.block { display: block; }
.right { text-align: right; }



/* HEADER_TOP */
#header_top {
  height: 31px;
  min-height: 31px;
  max-height: 31px;
  color: #666;
  font-size: 0.8em;
}
#header_top #adr_site { 
  float: left;
  margin: 7px 0 0 10px; 
  width: 420px; /*430-10*/
}
#header_top #langues { 
  float: right;
  margin: 7px 10px 0 0;
  width: 430px; /*440-10*/
  text-align: right;
}
#langues a { 
  color: #666;
  text-decoration: none; 
}
#langues a:hover { 
  color: #903;
  text-decoration: none; 
}
#langues a img {
  margin: 3px 5px -3px 0;
  opacity: 0.6;
  -moz-opacity: 0.6;
  -webkit-opacity: 0.6;
  -khtml-opacity: 0.6;
}
#logo {
  background: url(../img/logo_taxival_v2.png) no-repeat;
  background-position: 0px 9px;
}



/* HEADER_LOGO */
#header_logo {
  background: url(../img/header_gradient.png) no-repeat top left;
  height: 140px;
  min-height: 140px;
  max-height: 140px;
}
#logo {
  height: 64px;
  min-height: 64px;
  float: left;
  width: 440px;
}
#header_reserver {
  height: 44px; /*64-20*/
  min-height: 44px; /*64-20*/
  float: right;
  text-align: right;
  padding: 20px 0 0 0;
  width: 430px;
  color: #666;
}
#header_reserver span { color: #999; }



/* MENU */
ul#menu_fr, ul#menu_en { 
  height: 60px;
  min-height: 60px;
  max-height: 60px;	
  width: 870px;
  list-style: none;
  margin: 0; 
  padding: 0; 
  margin-bottom: 26px;
}
ul#menu_fr li, ul#menu_en li { 
  float: left;
  margin: 0; 
  padding: 0; 
}
ul#menu_fr li a {
  background: url(../img/bg_menu_sprite_fr.png) no-repeat scroll top left;
  display: block;
  height: 60px;
  width: 145px;
  position: relative;
}
ul#menu_en li a {
  background: url(../img/bg_menu_sprite_en.png) no-repeat scroll top left;
  display: block;
  height: 60px;
  width: 145px;
  position: relative;
}
/* backgrounds de base */
ul#menu_fr li a#menu_accueil, ul#menu_en li a#menu_accueil { background-position: 0px 0px; }
ul#menu_fr li a#menu_services, ul#menu_en li a#menu_services { background-position: -145px 0px; }
ul#menu_fr li a#menu_reservation, ul#menu_en li a#menu_reservation { background-position: -290px 0px; }
ul#menu_fr li a#menu_tarifs, ul#menu_en li a#menu_tarifs { background-position: -435px 0px; }
ul#menu_fr li a#menu_partenaires, ul#menu_en li a#menu_partenaires { background-position: -580px 0px; }
ul#menu_fr li a#menu_contact, ul#menu_en li a#menu_contact { background-position: -725px 0px; }
/* hover du span */
ul#menu_fr li a span {
  background:url(../img/bg_menu_sprite_fr.png) no-repeat scroll bottom left;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 100;
}
ul#menu_en li a span {
  background:url(../img/bg_menu_sprite_en.png) no-repeat scroll bottom left;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 100;
}
/* curseur */
ul#menu_fr li a span:hover, ul#menu_en li a span:hover { cursor: pointer; }
/* images hover */
ul#menu_fr li a#menu_accueil span, ul#menu_en li a#menu_accueil span { background-position: 0px -60px; }
ul#menu_fr li a#menu_services span, ul#menu_en li a#menu_services span { background-position: -145px -60px; }
ul#menu_fr li a#menu_reservation span, ul#menu_en li a#menu_reservation span { background-position: -290px -60px; }
ul#menu_fr li a#menu_tarifs span, ul#menu_en li a#menu_tarifs span { background-position: -435px -60px; }
ul#menu_fr li a#menu_partenaires span, ul#menu_en li a#menu_partenaires span { background-position: -580px -60px; }
ul#menu_fr li a#menu_contact span, ul#menu_en li a#menu_contact span { background-position: -725px -60px; }



/* HEADER BANDEAU */
#header_bandeau {
  background: url(../img/header_bandeau.jpg) no-repeat top left;
  height: 250px;
  min-height: 250px;
  margin-bottom: 25px;
}



/* FOOTER */
#footer {
  background: #000;
  color: #666;
  font-size: 0.8em;
  padding: 20px;
}
#footer_left {
  float: left;
  width: 560px;
}
#footer_right {
  float: right;
  width: 310px;
  text-align: right;
}
#footer a { 
  color: #666;
  text-decoration: none; 
}
#footer a:hover { 
  color: #903;
  text-decoration: underline; 
}
#footer_left span { color: #999; }
#footer_desc { padding: 20px 0 0 0; }



/* CONTENU PAGE */
#contenu_page { 
  margin-bottom: 25px;
}
div.separateur_full_gris {
  background: url(../img/bg_hr_gris.png) repeat-x;
  height: 1px;
  margin: 20px;
}



/* ACCUEIL */
#actu {
  background: #303030;
  padding: 10px;
  color: #ccc;
}
.titre { margin-bottom: 10px; }
#accueil_resa, #accueil_resa2 {
  background: #303030;
  color: #ccc;
}
.bloc_x3 {
  float: left;
  width: 256px; /*276-20*/
  max-width: 256px;
  padding: 10px;
  word-wrap:break-word;
}
.bloc_x3_1, .bloc_x3_2, .bloc_x3_3 {
  float: left;
  font-size: 0.85em;
  position: relative;
}
.bloc_x3_1 {
  width: 266px; /*276-10*/
  padding: 10px 0 10px 10px;
  word-wrap:break-word;
}
.bloc_x3_2 {
  width: 276px;
  padding: 10px 0 10px 0;
  word-wrap:break-word;
}
.bloc_x3_3 {
  width: 266px; /*276-10*/
  padding: 10px 10px 10px 0;
  word-wrap:break-word;
}
.sep_x3 {
  float: left;
  width: 1px; /*21-20*/
  margin: 10px;
  background: url(../img/bg_hr_gris_vertical.png) repeat-y;
}
.h250 { 
  height: 250px;
  min-height: 250px;
}
div.p_butx3 {
  position: absolute;
  top: 235px;
  left: 50%;
  margin-left: -110px;
}
.but_x3 {
  color: #903;
  background: url(../img/motif_bouton.png);
  border: #000 1px solid;
  width: 220px;
  padding: 4px;
}
.but_x3:hover { cursor: pointer; }
label { font-weight: normal; }
input.txt_resa_rapide {
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  width: 200px;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}
select.sel_resa_rapide { width: 203px; }
#output_resa_rapide { 
  color: #ccc;
}



/* NEWSTICKER */
#ticker_actu {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 0.85em;
}
#ticker_actu li { color: #ccc; }
.ticker_titre { font-weight: bold; }



/* SELECTBOX */
div.selectbox-wrapper {
  position: absolute;
  width: 400px;
  background-color: #ccc;
  border: 0;
  margin: -6px 0 0 1px;
  padding: 0;
  font-size: 1em;
  text-align: left;
  height: 200px;
  *height: 200px; /*IE6 fix */
  overflow: auto;
  z-index: 10;
  color: #000;
}
div.selectbox-wrapper ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
div.selectbox-wrapper ul li.selected { 
  background-color: #999;
  color: #903;
}
div.selectbox-wrapper ul li.current { 
  background-color: #666;
  color: #fff;
}
div.selectbox-wrapper ul li {
  list-style-type: none;
  display: block;
  margin: 0;
  padding: 2px 2px 2px 4px;
  cursor: pointer;
}
/* css du select */
.selectbox {
  margin: 0 5px 0 0;
  padding-left: 2px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
  width: 210px; 
  display: block;
  text-align: left; 
  background: url(../img/bg_select.png) right;
  height: 16px;
  cursor: pointer;
  border: 1px solid #000;
  color: #000;
}



/* SERVICES */
div.separateur_full_rouge {
  background: url(../img/bg_hr_rouge.png) repeat-x;
  height: 1px;
}
div.bloc_gris_full {
  background: #303030;
  padding: 10px;
  color: #ccc;
  font-size: 0.85em;
}
.tit_services {
  margin: 0 0 5px 0;
  font-size: 1.2em;
}
p.img_serv {
  width: 283px; 
  text-align: center; 
  float: left; 
  margin: 0;
}




/* TARIFS */
ul#tarifs, ul#tarifs li {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 870px;
}
ul#tarifs li {
  font-size: 0.85em;
}
#tar_head {
  height: 40px;
  min-height: 40px;
  background: #666;
}
.tarif_clair { 
  height: 30px;
  min-height: 30px;
  background: #666; 
}
.tarif_fonce { 
  height: 30px;
  min-height: 30px;
  background: #303030; 
}
ul#tarifs li div {
  float: left;
}
.tar_sep {
  width: 1px;
  height: 100%;
  background: url(../img/bordure_999_vert.png);
}
.tar_col_233 { 
  width: 223px; /*233-10*/
  padding-left: 10px; 
}
.tar_col_150 { 
  width: 150px;
  text-align: center; 
}
.tar_col_120 { 
  width: 120px; 
  text-align: center;
}
.tar_th {
  font-weight: bold;
  padding-top: 10px;
}
.tar_td { padding-top: 5px; }
#tarif_footer1, #tarif_footer2 { 
  float: left;
  margin: 15px 0 25px 0;
  width: 435px;
  font-size: 0.85em;
  color: #999;
} 
#tarif_footer1 { text-align: left; }
#tarif_footer2 { text-align: right; }
#etoile_tarifs { 
  color: #ccc;
  font-size: 0.8em;
}



/* PARTENAIRES */
.part_cat {
  background: #666;
  height: 25px;
  padding: 10px 0 0 10px;
  font-size: 1em;
  /*font-weight: bold;*/
}
ul.part_detail, ul.part_detail li {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.part_detail { background: #303030; }
ul.part_detail li span {
  display: block;
  padding: 0 0 0 10px;
  font-size: 0.85em;
}
ul.part_detail li:first-child { padding-top: 20px; }



/* CONTACT */
.bloc_x2 {
  float: left;
  width: 425px;
  background: #303030;
  font-size: 0.85em;
}
.contact_titre {
  background: #666;
  height: 25px;
  padding: 10px 0 0 10px;
  font-size: 1.175em;
  margin-bottom: 10px;
}
ul#info_contact {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul#info_contact li { 
  float: left;
  display: block;
  width: 200px; 
  padding: 5px 0 10px 10px;
}
input.txt_contact {
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  width: 160px;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}

#info_message label {
  margin: 0 0 0 10px;
  display: block;
  padding: 5px 0 6px 0;
}
#info_message textarea {
  width: 395px;
  height: 150px;
  margin: 0 0 0 10px;
  padding: 2px; 
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}
#contact_bloc1, #contact_bloc2 {
  height: 240px;
  min-height: 240px;
}
#contact_bloc3{
  height: 500px;
  min-height: 500px;
  background: #303030;
  font-size: 0.85em;
}
#contact_bloc3 .contact_titre {
  margin-bottom: 10px; 
}
#info_societe {
  padding: 5px 0 0 10px;
}
#carte_contact {
  width: 850px;
  height: 435px;
  margin: 20px 10px 10px 10px;
}
.info_content p {
  margin: 0;
  padding: 0;
  color: #666;
}
#output_contact {
  height: 20px;
  min-height: 20px;
  margin-bottom: 8px;
}



/* RESERVATION */
div.bloc_gris_clair_full {
  background: #ccc;
  padding: 0;
  color: #000;
  font-size: 0.85em;
}
.div_chk, #img_chk_aller, #img_chk_aller_retour {
  float: left;
  height: 45px;
  min-height: 45px;
}
.div_chk {
  display: table-cell;
  width: 35px;
}
.div_chk input { margin: 15px 0 0 10px; }
div.contenu_bloc_x2, div.contenu_bloc_x1 { padding: 10px; }
div.contenu_bloc_x2 span { float: left; }
input.resa_date {
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  width: 100px;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}
input.resa_heure {
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  width: 40px;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
}
.ui-datepicker-calendar th { background: transparent; }
select#aller_date, select#retour_date { width: 40px; }
select#aller_hr1, select#aller_hr2, select#aller_hr3, select#aller_hr4 { width: 40px; }
select#retour_hr1, select#retour_hr2, select#retour_hr3, select#retour_hr4 { width: 40px; }
#cadre_aller_heure div, #cadre_retour_heure div { float: left; }
.txt_h { margin: 8px 5px 0 5px; }
#cadre_aller_passagers div, #cadre_retour_passagers div { 
  float: left; 
  width: 100px;
}
select#aller_passager_a, select#aller_passager_e, select#aller_passager_s, select#aller_passager_r { width: 40px; }
select#retour_passager_a, select#retour_passager_e, select#retour_passager_s, select#retour_passager_r { width: 40px; }
input.adresse {
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  width: 230px;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}
#cadre_aller_arrivee span, #cadre_retour_arrivee span {
  float: left;
}
.bloc_gris_full div {
  float: right; 
  margin: 0;
  padding-top: 5px;
}
.bloc_x1 {
  background: #303030;
  font-size: 0.85em;
}
#cadre_coords div { 
  float: left;
  width: 280px;
}
#resa_precisions {
  width: 844px;
  height: 150px;
  padding: 2px;
  border: #000 1px solid;
  background: #ccc;
  color: #000;
  font-size: 1em;
  font-family: Arial, Helvetica, sans-serif;
}
#vip1, #vip2 { margin: 0; }
   