
body {
  background: #f00;
  font: 16px/1.5 Calibri, Arial;  
  background: linear-gradient(to bottom, #64bfec 0px, #a5dbf5 58px, #fff 126px, #fff 270px, #f3f3f3 359px) no-repeat, #f3f3f3;
  box-sizing: border-box;
}
	
@media screen {
.page {	
  margin: 1em auto;
  max-width: 82em; /* ex 62em */
  background: #fff;    
  border-radius: 8px;   
  border: 1px solid #E4E4E4;
  box-shadow: 0 0 5px #E0E0E0;
}
}
  
.header {
  background: 
    url("logo.jpg") 1em 50% no-repeat,
    linear-gradient(to bottom, #f0fafc 0%, #fff 100%) no-repeat;    
  color: #00adee;
  /* padding: 1em 1em; */
  position: relative;
  border-bottom: 1px solid #f1f1f1;
  border-radius: 8px 8px 0 0;
  height: 100px;
  text-align: right;
}

.header h1 {
  margin: 0; 
  padding: .5em 20px 0 280px; 
  font-size: 23px;
  color: #00ADEE;
  font-style: italic;
  font-family: Georgia,Arial,Helvetica,sans-serif;
}
.header h1 small {
  font-size: 60%; 
  line-height: 80%;
}
.header h1 a {
  text-decoration: none;
}
.header h1 a:visited {
  color: #00ADEE;
}
.header p {
  padding-right: 20px;
  padding-left: 280px; 
}


.content {
  padding: 0 1em;
}
.content h2 {
  margin: 0.5em 0;
  font-size: 200%;
}

.footer {
  margin: 2em .25em 0;
  border-top: 1px solid #f1f1f1;
  text-align: center;
  color: #888;            
  clear: left;
}


p {
  margin: .3em 0;
}


.flash {
  margin: 1em 0;
  padding: .5em;
  border: 1px solid #000;
  border-radius: .25em;
}
.flash.error {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
} 
.flash.info {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
} 


form span.error {
  color: #a94442;
} 


.menu {
  background: #00adef;
  color: #fff;
  margin: 0;
  padding: 0;  
}
.menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.menu ul li {
  display: inline-block;
  line-height: 2em;
  height: 2em;  

}
.menu a, .menu a:visited, .menu a:active { 
  display: inline-block;
  color: #fff;
  margin: 0;
  text-decoration: none;
  text-transform: uppercase;
  padding: 0 0.45em;
  
}
.menu a:hover {
  color: #fff;
  background: #000;
}


.cleaner {
  clear: both;
}
/* Kalendar */
      .calendar {        
        background: #fffefa;
        box-sizing: border-box;
        display: block;
        width: 5.5em;
        height: 6.5em;
        overflow: hidden;
        border: 1px solid #888;
        border-top: 2px dotted #888;
        position: relative;
        padding-top: 1.5em;
        font-weight: bold;
        text-align: center; 
        box-shadow: #c8c8c8 1px 1px 0px, #888 2px 2px 0px /*, #c8c8c8 3px 3px 0px, #888 4px 4px 0px*/;
        color: #000;        
      }
      .calendar .year {
        display: block;
        width: 100%;
        height: 1.5em;
        line-height: 1.5em;
        position: absolute;
        top: 0;
        left: 0;
        background: #a00;
        color: #fff;
      }      
      .calendar .day {
        margin-top: 0.1em;
        display: block;
        width: 100%;
        line-height: 80%;
        font-size: 250%;
        color: #000;                
      }
      .calendar.sunday .day, .calendar.sunday .weekday {
        color: #a00;
      } 
      .calendar sup {                
        line-height: 80%;
        font-size: 50%;     
        color: #000;         
      }      
      .calendar .weekday {
        display: block;
        width: 100%;
        height: 1.5em;
        line-height: 1.5em;
        position: absolute;
        bottom: 0;
        left: 0;        
        color: #bbb;
        font-weight: bold;
      }
      .calendar .hidden {
        display: none;
      }
      .calendar.disabled {
        background: #fafafa;
        color: #444;
      }
      .calendar.disabled .year {
        background: #888;        
      }
      
      /* hover */
      a:hover .calendar, a:hover .day {
        /*color: #00a; */
      }
      a:hover .calendar {
        background: #fafedd;
      }
      a:hover .calendar .year {
        background: #b00;
      }
/* end of kalendar */      


/* clock */
 .clock {
    box-sizing: border-box;
    background: #fffefa;
    display: block;
    height: 6em;
    width: 6em;
    border: 0.2em solid #222;    
    border-radius: 10.0%;
    line-height: 5.5em;
    text-align: center; 
    position: relative; 
    color: #000;
  }

  .clock.disabled {
    color: #888;
    background: #fafafa;
    border-color: #888;
  }  
 
  .clock .hhmm {
    font-weight: bold; 
    font-size: 200%;
    z-index: 5;
  }
  .clock .ampm {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;   
    height: 1.5em;
    text-align: center;
    line-height: 1em;
    font-weight: bold;
    color: #888;
  }
     
  /* hover */
  a:hover .clock {
    background: #fafedd;
  }
/* end of clock */



/* DL */
dt {
  float: left;
  clear: left;
  width: 8em;
  text-align: left; /*right; */
  font-weight: bold;
}
dt::after {
  /* content: ":"; */
}
dd {
  margin: 0 0 0 8.5em;
  padding: 0 0 0.5em 0;
}
/* /DL */



/* stepTwo */
.trainDetail {
  padding:0 7em;
}
.trainCapacity p {
  text-align: left;
}
.trainCapacity {
  position: absolute; 
  top:0; 
  right:0; 
  width: 8em;
}  



table {
  border-collapse: collapse;
}

table, td, th {
 	border: 1px solid black;  
  padding: 0.2em; 
}

th {
 	background: #cbddf9;     
}

table.highlightrow tr:hover {
  background: #ffeeaa;
} 








/* Hide spinners for Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

/* Hide spinners for Chrome */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}




/* Forms */
/* Mystyles */
/* http://codepen.io/chriscoyier/pen/DmnlJ */
label.required {
  font-weight: bold;
}

form * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

form > div {
  /* clear: both; */
  overflow: hidden;
  padding: 1px;
  margin: 0 0 10px 0;
}

form > div > fieldset > div > div {
  margin: 0 0 5px 0;
}
form > div > label,
legend {
	width: 25%;
  float: left;
  padding-right: 10px;
}
form > div > div,
form > div > fieldset > div {
  width: 74%;
  float: right;
}
form > div > fieldset label {
	font-size: %; 
}
fieldset {
	border: 0;
  padding: 0;
}

input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
textarea,
select {
	width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
  height: 25em;
}
input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
select {
 /*  width: 50%; */ 
 height: 2em; 
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=checkbox]:focus,
input[type=number]:focus,
select:focus,
textarea:focus {
  outline: 0;
  border-color: #1087c0;
  box-shadow: 0px 0px 4px #1087c0;
}
@media (max-width: 600px) {
  form > div {
    margin: 0 0 15px 0; 
  }
  form > div > label,
  legend {
	  width: 100%;
    float: none;
    margin: 0 0 5px 0;
  }
  form > div > div,
  form > div > fieldset > div {
    width: 100%;
    float: none;
  }
  input[type=text],
  input[type=email],
  input[type=url],
  input[type=password],
  textarea,
  select {
    width: 100%; 
  }
  
  .trainDetail {
    padding:0 0 0 7em;
  }
  .trainCapacity p {
    text-align: left;
    padding:0 0 0 7em;
  }
  .trainCapacity {
    position: static; 
    width: auto;
  }  
  .page {	
    margin: 0;
    width: 100%;
    max-width: 100%;
    background: #fff; 
    border: none; 
    border-radius: 0px; 
    box-shadow: none;
  }  
  body {
    margin: 0;
  }
  .header {
    border-radius: 0px;
  }    
}
@media (min-width: 1000px) {
  form > div > label,
	legend {
  	text-align: right;
  }
}
/* end of forms */


@media print {
  div.flash, h2 {
    display: none;
  }
  .footer {
    border: none;
    font-size: 80%;
  }
  .stepNavigation {
    display: none;
  }     
}

