
table, thead, tbody, tr, td, th {
font-size: inherit;
font-family: inherit;
color:inherit;
}

form td {
vertical-align: top;
}

body {
    background-color:#DDDDDD;
    height:100%; 
    margin-top:0;
    margin-bottom:0; 
    margin-left: 0;
    margin-right: 0;
}

#docholder {
    position:relative;
    min-width:600px;
    background-color: white;
    min-height:100%;
    padding:0;
    padding-left:5px;
    padding-right:5px;
    overflow: auto;
    height:auto !important;
}

.wideScreen { /*#docholder*/
    margin-left: auto;
    margin-right: auto;
    width: 900px;
    background:url('/img/scraper-fill.png'); 
    background-position:right top; 
    background-repeat:repeat-y;
}

.narrowScreen { /*#docholder*/
    margin-left: 0;
    margin-right: auto;
    background: url('/img/scraper-corner-mobile.png');
    background-position:left top; 
    background-repeat: no-repeat;
}

#mainheader {
    float:left;
    text-align:right;
    position:relative;
}

.wideScreen #mainheader {
    width: 630px; /*or 650px in theory!*/
    height: 240px; /*sky corner height minus margins */
    margin: 5px;
}

.narrowScreen #mainheader {
    height:245px;
    margin: 5px;
}

#mainheader #logo {

}

.narrowScreen #mainheader #logo {
    position:absolute;
    bottom:0;
    left:115px;
}

#mainheader #mainmenu {

}

.narrowScreen #mainheader #mainmenu {
    padding-left: 250px;
    padding-right:10px;
    padding-top: 10px;
}

.wideScreen #mainheader #mainmenu {
    position:absolute;
    bottom:1.5em;
    right:0;
}

#mainheader #mainmenu .menuitem {
    display:inline-block;
}

#mainheader a {
    text-decoration: none;
    color: black;
    border-width: 0px;
    border: none;
    text-transform: lowercase;
}

#mainheader a:hover {
    color: #6666FF;
}

#mainheader a:active {
    position: relative;
    top: -1px;
    left: 1px;
}

#mainheader .menuactiveitem, #mainheader .menuactiveitem a {
    text-transform: lowercase;
    color: #6666FF;
}

.narrowScreen #skycorner {
    display: none;
}

.wideScreen #skycorner {
    display: block;
    float:right;
    background: url('/img/scraper-corner.png');
    background-position:left bottom; 
    background-repeat: no-repeat;
    height:255px;
    width: 255px;
    padding: 0;
    margin: 0;
    margin-right:-5px;
}

#maincontent {
    position:relative;
    float:left;
    clear: left;
    padding-top: 25px;
    padding-bottom:75px;
    margin-left:0px;
    margin-top:5px; 
    min-height:475px; /*require content to be at least ~twice as tall as header*/
    background-color:#333333; 
    color:white;
    font-family: 'Merriweather', serif;
    text-align: justify;
}

.wideScreen #maincontent {
/*    padding-right:150px;*/
    width: 645px; /* =650 minus left&right padding and margins minux 5px for right pane margin. */
}

.narrowScreen #maincontent {
    margin-right: 0px;
    width:100%;
    font-size: larger;
}

#column {
    display:block;
    max-width: 520px;
    padding-left:40px;
    padding-right:25px;
}

#column img {
    width:100%;
    margin-top:10px;
    margin-bottom:10px;
    border: 1px solid #aaaaaa;
}

#maincontent h1 {
    text-align: left;
    font-weight: bold;
    font-size: 45px;
}

#maincontent h1 + p::first-letter, #maincontent h2 + p::first-letter {
    float:left;
    font-weight: bold;
    font-size: 45px;
    line-height: 40px;
    /*font-size: 2.9em;
    line-height: 2.6em;*/
    padding-right: 2px;
}

#maincontent a {
    color:#aaaaaa;
}

#maincontent .notebox {
    border:1px solid; padding:0.5em; border-radius:0.3em;
}

.errordisp {
    border:3px double; color:red; font-weight:bold; border-radius: 0.3em;
    padding:0.5em;
}

#submenu {
    font-family: 'Orbitron',Arial,sans-serif; 
    font-size: 14px;
    font-weight: 400;
    color:black;
}

.wideScreen #submenu {
    display: block;
    padding: 10px;
    padding-bottom:10em; /*to allow for footer*/
    width:235px;
    float:right;
}

.narrowScreen #submenu {
    display: none;
}

#submenu a {
    text-decoration: none;
    color:black;
}

#submenu .menuactiveitem, #submenu .menuactiveitem a, #submenu a:hover {
    color:white;
}

#submenu a:active {
    position: relative;
    top: -1px;
    left: 1px;
}

#mobile-submenu { /*widescreen/default*/
    display:none;
}

.narrowScreen #mobile-submenu {
    display:inline;
    text-transform:uppercase;
    font-size:small;
}

#mobile-submenu .menuactiveitem, #mobile-submenu .menuactiveitem a {
    color:white;
    text-decoration:none;
}

#footer {
    font-size:8pt;
    padding:10px;
}

.wideScreen #footer {
    font-family:'Merriweather',serif;
    position:absolute;
    bottom:0;
    right:0;
    color:white;
    text-align:right;
}

.narrowScreen #footer {
    font-family: 'Orbitron',Arial,sans-serif; 
    float:left;
    clear:left;
    text-align:left;
}

#footer a {
    color:blue;
    text-decoration:none;
}

.turnupdatecell, .bookeddatecell { /*table cell showing an upcoming date */
    text-align: right;
    font-family: Arial,sans-serif; 
    background-color: #6666ff;
    padding: 0.5em;
    vertical-align: top;
}

.turnupdatecell big, .bookeddatecell big {
    font-family: 'Orbitron',Arial,sans-serif; 
}

.bookeddatecell {
    background-color: #333380;
}

.tourinfocell {
    vertical-align: top;
    border-top: 1px solid;
    border-right: 1px solid;
    padding-right: 0.5em;
    padding-top: 0.25em;
    text-align:left;
}

hr {
    border: 0px;
    border-top: 1px solid #aaaaaa;
}

.errorcell {
    border: 2px dotted red;
    border-radius: 0.3em;

}
