﻿/* Katy Trail */

body {
    background-color: white;
    font-family: Verdana, Helvetica, sans-serif;
    font-weight: normal;
    letter-spacing: normal;
    text-transform: none;
    word-spacing: normal;
    text-decoration: none;
}
/* https://www.w3schools.com/css/css_rwd_grid.asp  */

* {
    box-sizing: border-box;
}

.row::after {
    content: "";
    clear: both;
    display: table;
}

[class*="col-"] {
    float: left;
    padding: 15px;
}

img {
    border: 0;
}

/* For mobile phones: */
[class*="col-"] {
    width: 100%;
}

.panelContainer {
    /*display: inline;*/
}

.leftPanel {
    margin-right: 5px;
    margin-left: 5px;
    /*    border: 1px solid red;*/
}

.centerPanel {
}

.rightPanel {
    margin-right: 5px;
    margin-left: 5px;
   /*    border: 1px solid black;*/
}



.col-s-0 {
    width: 0%;
}

.col-s-0pt5 {
    width: 4.16%;
}

.col-s-1 {
    width: 8.33%;
}

.col-s-1pt25 {
    width: 10.4%;
}

.col-s-1pt5 {
    width: 12.5%;
}

.col-s-2 {
    width: 16.66%;
}

.col-s-2pt5 {
    width: 20.8%;
}

.col-s-3 {
    width: 25%;
}

.col-s-3pt3 {
    width: 27.78%;
}

.col-s-3pt5 {
    width: 29.15%;
}

.col-s-4 {
    width: 33.33%;
}

.col-s-4pt5 {
    width: 37.5%;
}

.col-s-5 {
    width: 41.66%;
}

.col-s-6 {
    width: 50%;
}

.col-s-7 {
    width: 58.33%;
}

.col-s-8 {
    width: 66.66%;
}

.col-s-9 {
    width: 75%;
}

.col-s-10 {
    width: 83.33%;
}

.col-s-11 {
    width: 91.66%;
}

.col-s-12 {
    width: 100%;
}


/* For tablets: */
@media only screen and (min-width: 600px) {
    .col-m-0 {
        width: 0%;
    }
    .col-m-0pt5 {
        width: 4.16%;
    }
    .col-m-1 {
        width: 8.33%;
    }
    .col-m-1pt25 {
        width: 10.4%;
    }
    .col-m-1pt5 {
        width: 12.5%;
    }
    .col-m-2 {
        width: 16.66%;
    }
    .col-m-2pt5 {
        width: 20.8%;
    }
    .col-m-3 {
        width: 25%;
    }
    .col-m-3pt3 {
        width: 27.78%;
    }
    .col-m-3pt5 {
        width: 29.15%;
    }
    .col-m-4 {
        width: 33.33%;
    }
    .col-m-4pt5 {
        width: 37.5%;
    }
    .col-m-5 {
        width: 41.66%;
    }
    .col-m-6 {
        width: 50%;
    }
    .col-m-7 {
        width: 58.33%;
    }
    .col-m-8 {
        width: 66.66%;
    }
    .col-m-9 {
        width: 75%;
    }
    .col-m-10 {
        width: 83.33%;
    }
    .col-m-11 {
        width: 91.66%;
    }
    .col-m-12 {
        width: 100%;
    }

    .panelContainer {
        /*display: inline;*/
        display: flex;
    }

    .leftPanel {
        margin-right: 5px;
        margin-left: 5px;
        display: inline;
    }

    .centerPanel {
        display: inline;
    }

    .rightPanel {
        margin-right: 5px;
        margin-left: 5px;
        display:inline;
    }
}

/* For desktop: */
@media only screen and (min-width: 768px) {
    .col-0pt5 {
        width: 4.16%;
    }
    .col-1 {
        width: 8.33%;
    }
    .col-1pt25 {
        width: 10.4%;
    }
    .col-1pt5 {
        width: 12.5%;
    }
    .col-2 {
        width: 16.66%;
    }
    .col-2pt5 {
        width: 20.8%;
    }
    .col-3 {
        width: 25%;
    }
    .col-3pt3 {
        width: 27.78%;
    }
    .col-3pt5 {
        width: 29.15%;
    }
    .col-4 {
        width: 33.33%;
    }
    .col-4pt5 {
        width: 37.5%;
    }
    .col-5 {
        width: 41.66%;
    }
    .col-6 {
        width: 50%;
    }
    .col-7 {
        width: 58.33%;
    }
    .col-8 {
        width: 66.66%;
    }
    .col-9 {
        width: 75%;
    }
    .col-10 {
        width: 83.33%;
    }
    .col-11 {
        width: 91.66%;
    }
    .col-12 {
        width: 100%;
    }

    .col-unset {
        width: unset;
    }

    .panelContainer {
        /*display: table;*/ /* https://stackoverflow.com/questions/3930526/how-can-i-make-the-middle-column-div-always-expand-to-fit */
        display: flex;
    }

    .leftPanel {
        margin-right: 5px;
        margin-left: 5px;
        display: table-cell;
    }
    
    .centerPanel {
        /*display: table-cell;*/
    }

    .centerPanelTop {
        display: table-cell;
        margin-bottom: 10px;
    }

    .rightPanel {
        margin-right: 5px;
        margin-left: 5px;
        display: table-cell;
    }
}


/* med & large screen sizes; source: http://ageekandhisblog.com/css-how-to-easily-hide-content-on-only-mobile-or-only-desktop/ */
@media (min-width:600px) {
    .mobile-only {
        display: none !important;
    }
    .non-mobile-only {
        display: block !important;
    }
    .med-desktop-only {
        display: block !important;
    }
    .large-desktop-only {
        display: none !important;
    }
}

/* small screen sizes */
@media (max-width: 599px) {
    .mobile-only {
        display: block !important;
    }
    .non-mobile-only {
        display: none !important;
    }
    .med-desktop-only {
        display: none !important;
    }
    .large-desktop-only {
        display: none !important;
    }
}

/* large screen sizes */
@media (min-width:1211px) {
    .mobile-only {
        display: none !important;
    }
    .non-mobile-only {
        display: block !important;
    }
    .med-desktop-only {
        display: none !important;
    }
    .large-desktop-only {
        display: block !important;
    }
}

.inabox {
    border: 1px solid black;
}
.inabluebox {
    border: 1px solid blue;
}

.milechart {
    border: 1px solid black;
    font-size: smaller;
    text-wrap: none;
}

.smallerfont {
    font-size: smaller;
}

.photo-credit {
    font-size:0.65em;
}

.photo-adjust {
    max-width: 100%;
    height: auto;
    margin-bottom: 0px;
}

a:link, a:visited {
    color: #034af3;
    text-decoration: none;
}

a:hover {
    color: #6B0707;
}

a:active {
    color: #034af3;
    text-decoration: none;
}

.whitelink {
    color: white;
    text-decoration: none;
}

.planner-service {
    margin: 3px;
    text-align: center;
}
.city-service {
    text-align: center;
}
.fullURL { /* URL containing querystring for settings to return to a page */
    color: blue;
    font-size: 0.8em;
}

.topheader {
    font-weight: normal;
    background-color: #D2FFDE; /* #014101 = dark green; #00008B - dark blue ; #BD090A - red */
    color: #00008B; /* #D2FFDE-light green; #FCFE00-yellow */
    font-size: 1.5em;
}
.topHR {
    color: #00008B;
    background-color: #D2FFDE;
    height: 3px;
}
.midheader {
    font-weight: normal;
    background-color: #00008B; /* #014101 = dark green; #00008B - dark blue */
    color: #D2FFDE; /* light green */
    FONT-SIZE: larger;
}

.midheaderPlain {
    font-weight: normal;
    FONT-SIZE: larger;
}
.headerbar { /* header for service listings on various pages */
    background-color: #0000FF; /* blue */
    color: white; /*  */
    font-weight: bold;
    border-top: 1px solid white;
}

.highlightrow {
    background-color: #FFFF00; /* yellow */
}
.altrow {
    background-color: cornsilk; /* green:#D2FFDE*/
}
.helpmessage {
    color: #FF0000; /* red */
}
.smallrednote {
    color: #FF0000; /* red */
    font-size: 0.6em;
}
.smallgreentext {
    color: green;
    font-size: 0.8em;
}
.redText {
    color: #FF0000;
}
.boldText {
    font-weight: bold;
}

.faqQuestion {
    font-weight: bold;
    margin-top:20px;
}
.faqAnswer {
    font-weight: normal;
}

.credit {
    color: #000000; /* black */
    font-size: 0.6em;
}

.subtext {
    color: #000000; /* black */
    font-size: 0.7em;
    text-align: center;
    display: inline-block;
    width: 64px;
}

.highlight {
    background-color: #FFFF00; /* yellow */
}

.legend {
    background-color: #f9f9ea; /* pale yellow */
}

.narrowButton {
    background-color: #0000FF; /* blue */
    color: #FFFF00; /* yellow */
    border-radius: 5px;
}
.narrowButtonApply {
    background-color: lightgreen;
    color: white;
    padding: 5px 10px 5px 10px;
    border: 1px solid black;
    font-size: 1.1em;
    border-radius: 5px;
}
.narrowButtonCancel { /* spanbutton without top & bottom margins*/
    background-color: orangered;
    color: white;
    padding: 5px 10px 5px 10px;
    border: 1px solid black;
    font-size: 1.1em;
    border-radius: 5px;
}
.shrinkExpandLink {
    background-color: #0000FF; /* blue */
    color: #FFFF00; /* yellow */
}
.settingsBox {
    background-color: #F2F2F2; /* light gray */
}
.hr {
    color: #00008B;
    background-color: #00008B;
}


.alignright {
    text-align: right;
}

.hide {
    display: none;
}

.show {
    display: inline;
}

.selectedmenu {
    background-color: yellow;
    padding: 1px 10px 0px 10px; /* inner */
    margin: 10px 0px 0px 0px; /* outer */
    display: inline-block;
    border: 2px solid black;
}

.spanbutton { /* make a span look like a button*/
    background-color: blue;
    color: white;
    padding: 10px 10px 10px 10px;
    margin: 10px 10px 10px 10px; /* top & bottom margin only work on span with display:inline-block */
    display: inline-block;
    border: 1px solid black;
    font-size: 1.1em;
    white-space: nowrap;
    border-radius: 5px;
}

.spanbuttonslim { /* spanbutton without top & bottom margins*/
    background-color: blue;
    color: white;
    padding: 5px 10px 5px 10px;
    border: 1px solid black;
    font-size: 1.1em;
    border-radius: 5px;
}   

.topmenu { /* menu under top banner*/
    background-color: white;
    color: blue;
    padding: 1px 10px 0px 10px; /* inner */
    margin: 10px 0px 0px 0px; /* outer */
    display: inline-block;
    font-size: 1em;
    border: 1px solid black;
    text-align: center;
    vertical-align: top;
}

.footer {
    font-weight: normal;
    background-color: snow; /* #D2FFDE= bright green;#014101 = dark green; #00008B - dark blue */
    color: #014101;
    FONT-SIZE: small;
    text-align: center;
}


.leftPanel {
    margin-right: 5px;
    margin-left: 5px;
    display: table-cell;
}

.centerPanel {
    /*display: table-cell;*/
    vertical-align: top;
    border: 1px solid black;
}
.centerPanelTop {
    display: table-cell;
    margin-bottom: 10px;
}

.flex-container {
    display: flex;
    /*    flex-wrap: wrap;
    flex-direction:row;
    justify-content: center;*/
    border: 1px solid black;
}

    .flex-container > div {
        margin-left: 5px;
        margin-right: 5px;
    }

.rightPanel {
    margin-right: 5px;
    margin-left: 5px;
    display: table-cell;
}

.headingText {
    color: #400040; /* plum */
    FONT-SIZE: 1.2em;
    font-weight: bold;
}

.subHeadingText {
    color: #400040; /* plum */
    FONT-SIZE: 1.0em;
    font-weight: bold;
}

.subSubHeadingText {
    color: black;
    FONT-SIZE: small;
    font-weight: normal;
}

.settingsText {
    color: black;
    FONT-SIZE: 0.8em;
}

.reservationsLink {
    color: black;
    FONT-SIZE: small;
    text-decoration:underline;
}

.errorText {
    color: red;
    background-color: yellow;
    FONT-SIZE: 1.2em;
    font-weight: bold;
}


.contentBackground {
    background-color: whitesmoke;
    border-radius: 8px;
}

.contentContainer {
    background-color: white;
    border-radius: 8px;
    margin-left: 2px;
    margin-right: 2px;
    margin-bottom: 3px;
}
.contentContent {
    background-color: white;
    border-radius: 8px;
    margin-right: 2px;
    margin-bottom: 3px;
}

.contentContentYellow {
    background-color: yellow;
    border-radius: 8px;
    margin-right: 2px;
    margin-bottom: 3px;
}
.spaceTop {
    margin-top: 3px;
}

.spaceLeft {
    margin-left: 3px;
}

.spaceUnder {
    margin-bottom: 1em;
}

.superTM {
    vertical-align: super;
    font-size: 0.5em;
}
.centerImage {
    display: flex;
    justify-content: center;
}