body {
    BACKGROUND-COLOR: white;
    FONT-FAMILY: Verdana, Helvetica, sans-serif;
    /*FONT-SIZE: .6em;*/
    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;
}


/* For mobile phones: */
[class*="col-"] {
    width: 100%;
}

.panelContainer {
}

.leftPanel {
    margin-right: 5px;
    margin-left: 5px;
    /*border: 1px solid red;*/
}

.centerPanel {
}

.rightPanel {
    margin-right: 5px;
    margin-left: 5px;
    /*border: 1px solid black;*/
}


/* For tablets: */
@media only screen and (min-width: 600px) {
    .col-s-0 {
        width: 0%;
    }
    .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-3 {
        width: 25%;
    }
    .col-s-4 {
        width: 33.33%;
    }
    .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%;
    }

    .panelContainer {
        display: inline;
    }

    .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-1 {
        width: 8.33%;
    }
    .col-1pt25 {
        width: 10.4%;
    }
    .col-1pt5 {
        width: 12.5%;
    }
    .col-2 {
        width: 16.66%;
    }
    .col-3 {
        width: 25%;
    }
    .col-4 {
        width: 33.33%;
    }
    .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%;
    }

    .panelContainer {
        display: table-cell; /* https://stackoverflow.com/questions/3930526/how-can-i-make-the-middle-column-div-always-expand-to-fit */
    }

    .leftPanel {
        margin-right: 5px;
        margin-left: 5px;
        display: table-cell;
    }

    .centerPanel {
        display: table-cell;
    }

    .rightPanel {
        margin-right: 5px;
        margin-left: 5px;
        display: table-cell;
    }
}

/* med & large screen sizes; source: https://ageekandhisblog.com/css-how-to-easily-hide-content-on-only-mobile-or-only-desktop/ */
@media (min-width:992px) {
    .mobile-only {
        display: none !important;
    }
    .med-desktop-only {
        display: block !important;
    }
    .large-desktop-only {
        display: none !important;
    }
}

/* small screen sizes */
@media (max-width: 991px) {
    .mobile-only {
        display: block !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;
    }
    .med-desktop-only {
        display: none !important;
    }
    .large-desktop-only {
        display: block !important;
    }
}



.inabox {
    border: 1px solid black;
}

.milechart {
    border: 1px solid black;
    font-size: smaller;
}

.smallerfont {
    font-size: smaller;
}


.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: bold;
    background-color: #FCFE00; /* #014101 = dark green; #00008B - dark blue ; #BD090A - red */
    color: #BD090A; /* #D2FFDE-light green; #FCFE00-yellow */
    font-size: 1.5em;
}
.topHR {
    color: #00008B;
    background-color: #D2FFDE;
    height: 3px;
}
.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: #D2FFDE;
}
.helpmessage {
    color: #FF0000; /* red */
}
.smallrednote {
    color: #FF0000; /* red */
    font-size: 0.6em;
}
.boldText {
    font-weight: bold;
}
.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 */
}
.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;
}

.spanbuttonslim { /* spanbutton without top & bottom margins*/
    background-color: blue;
    color: white;
    padding: 5px 10px 5px 10px;
    border: 1px solid black;
    font-size: 1.1em;
}

.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: 1.1em;
    border: 1px solid black;
    text-align:center;
    vertical-align:top;
}

.footer {
    font-weight: normal;
    background-color: #D2FFDE; /* #014101 = dark green; #00008B - dark blue */
    color: #014101;
    FONT-SIZE: small;
    text-align: center;
}

.leftPanel {
    margin-right: 5px;
    margin-left: 5px;
    border: 1px solid red;
}

.rightPanel {
    margin-right: 5px;
    margin-left: 5px;
    border: 1px solid black;
}

.centerPanel {
}


.flex-container {
    display: flex;
    flex-wrap: wrap;
/*    justify-content: center;*/
}

    .flex-container > div {
        margin-left: 25px;
        margin-right: 25px;
    }

.headingText {
    font-weight: bolder;
    font-size: medium;
    color: #BAB810; /*#FF8080;*/
    font-family: Arial, Verdana;
    text-decoration: none;
}

.subHeadingText {
    color: #400040; /* plum */
    font-size: small;
    font-weight: bold;
}

.subSubHeadingText {
    color: black;
    font-size: small;
    font-weight: normal;
}


.sectionText {
    color: darkblue;
    font-family: Arial, Verdana;
    font-size: 1.0em;
}