/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

body {
    overflow: hidden;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */
@font-face{
    font-family: "montserrat";
    src: local('Montserrat');
    src: "url('fonts/Montserrat-Regular.ttf')";
}

@font-face{
    font-family: "montserrat";
    src: local('Montserrat');
    src: "url('fonts/Montserrat-Bold.ttf')";
    font-weight: bold;
}

@font-face{
    font-family: "montserrat";
    src: local('Montserrat');
    src: "url('fonts/Montserrat-Light.ttf')";
    font-weight: 300;
}

@font-face{
    font-family: "montserrat";
    src: local('Montserrat');
    src: "url('fonts/Montserrat-Medium.ttf')";
    font-weight: 500;
}
body{
    font-family: "montserrat", sans-serif;
    color: #3D3D3D;
    max-height: 100vh;
    max-width: 100vw;
}

.shadowed{
    box-shadow: 0px 0px 10px #999999;
}
.rounded{
    border-radius: 40px 40px 40px 40px;
    -webkit-border-radius: 40px 40px 40px 40px;
    -moz-border-radius: 40px 40px 40px 40px;
}

.flex-row{
    display: flex;
    flex-flow: row nowrap;
}
.flex-column{
    display: flex;
    flex-flow: column nowrap;
}

.bar{
    position: absolute;
    width: 100vw;
    height: 4vh;
    align-items: center;
}
#update-bar{
    top: 0;
}

.update-bar-container{
    width: 66%;
    height: 100%;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
}
.weather-bar-container{
    height: 100%;
    width: 33%;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row nowrap;
}
#weather-bar{

}
#weather-chip{
    background-color: #0C9093;
    margin-left: 0;
}
.center-main{
    justify-content: center;
}
.center-cross{
    align-items: center;
}
.bar-chip{
    justify-content: center;
    height: 2.5vh;
    margin-left: 1vw;
    border-radius: 40px;
    margin-right: 1vw;
    width: 7vw;
}
#update-chip{
    background-color: #BC0431;
}
.chip-text{
    color: #ffffff;
    font-size: 0.5em;
    letter-spacing: 0.1em;
    display: flex;
    align-self: center;
    margin: auto;
}
.ticker-container{
    max-height: 100%;
}
.ticker-text{
    font-size: 0.85em;
    margin: 0;
}

#header-static-welcome{
    font-weight: 300;
    font-size: 1em;
    letter-spacing: 0.7em;
}

#header-static-coffman{
    font-weight: 500;
}

#header-seperator{
    background-color: #ddb92a;
    height: 55%;
    width: 0.2vw;
    margin-left: 1vw;
    margin-right: 1vw;
}
#header-clock{
    align-items: center;
    margin-top: 2%;
}
#header-clock-date{
    margin: 0;
    font-size: 1.5em;
}
#header-clock-time{
}
.header-clock-text{
    margin: 0;
    font-weight: 500;
    font-size: 2em;
    margin: 0;
}
.location-header{
    height: 7%;
}
.location-header-text{
    margin: 0;
    font-weight: 500;
}
.main-container{
    height: 99%;
    /* margin-top: 1vh; */
    /* margin-bottom: 1vh; */
}


.sidebar-left{
    /* border-width: 0 1px 0 0; */
    /* border-style: solid; */
    background-color: #fffafa;
    box-shadow: 0px 0px 10px #999999;
    border-color: #999999;
}
.sidebar-right{

}

.sidebar-left-container{
    height: 30%;
    align-items: center;
    width: 100%;
    border-radius: 15px;
}

.sidebar-left-card-container{
    align-items: center;
    justify-content: flex-start;
    height: 75%;
    width: 100%;
}
.sidebar-left-header{
    width:100%;
    z-index: 5;
    padding-top: 2%;
}
.sidebar-left-title{
    font-weight: 400;
    margin: 0;
}
.sidebar-left-text{
    display: flex;
    flex-flow: column wrap;
    text-align: center;
    align-items: center;
    font-size: 1.2em;
    margin: 0;
    width: 80%;
}
.sidebar-left-info-image{
    display: flex;
    height: 40px;
    width: 135px;

}
.sidebar-left-info-text{
    margin: 0;
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    text-align: center;
}
.sidebar-left-routes-header{
    font-weight: 500;
}
.sidebar-left-routes-table{
    width: 80%;
}
.sidebar-left-table-row{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #3D3D3D;
    border-style: solid none none none;
}
.sidebar-left-table-cell{
    padding: 10px;
}
/*.sidebar-left-table-row:hover{
    background-color: #E8E8E8;
}*/

.sidebar-left-route-text{
    font-size: 1.5em;
    padding: 0;
    margin: 0;
}
.sidebar-left-info-link{
    display: flex;
    flex-direction: column;
    width: 135px;
    height: 40px;
    align-items: center;
    margin-bottom: 1%;
}
.legal-text-container{
    margin-top: 5px;
    bottom: 0;
    align-items: center;
    justify-content: center;
}
.legal-text{
    display: flex;
    flex-shrink: 10;
    font-weight: 300;
    font-size: 8px;
    margin: auto;
    text-align: center;
    width: 80%;
    justify-content: center;
    line-height: 1em;
}
#sidebar-left-info-container{
    height: 32%;

}
#sidebar-left-info-body{
    padding: 1% 0 0 0;
    justify-content: space-around;
}
#sidebar-left-info-header{

}
.sidebar-left-weather-row-container{
    width: 100%;
    height: 100%;
}
.sidebar-left-weather-row{
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 30%;
}
.sidebar-left-weather-row-text{
    margin: 0;
    display: flex;
    font-size: 1.2em;
}
.sidebar-left-weather-row-icon{
    height: 75%;
    width: auto;
    margin-left: 2.5%;
}
.small-margin-right{
   margin-right: 10px;
}
.header-container{
    justify-content: space-around;
    align-items: center;
    align-content: center;
    height: 25%;
    width: 100%;
}

.header-static-logo{
    max-height: 119px;
    max-width: 200px;

}
.card{
    border-radius: 15px;
    -moz-border-radius: 15px;
    -webkit-border-radius: 15px;
    width: 100%;
    margin: 0;
    height: 32%;
}
.card-header-route{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.25em;
    margin-bottom: 0;
    margin-top: 0.75vh;
}

.card-header{
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 300;
    height: 25%;
    padding: 0vh 0 2% 0;
    border: 1px;
    border-radius: 15px 15px 0px 0px;
    -moz-border-radius: 15px 15px 0px 0px;
    -webkit-border-radius: 15px 15px 0px 0px;
    z-index: 5;
}

.card-header-routeline{
    width: 50%;
    height: 50%;
    position: absolute;
}
.card-header-stop-container{
    margin: 0;
    width: 90%;
    justify-content: center;
    align-items: center;
}

.card-header-stop{
    margin: 0;
    font-size: 0.8em;
}

.card-chip{
    justify-content: space-around;
    align-items: center;
    height: 1em;
    margin-left: 0.5vw;
    border-radius: 40px;
    margin-right: 1vw;
    border-color: #3D3D3D;
    border-style: solid;
    border-width: 2px;
    width: 3vw;
    padding: 1px 3px 1px 3px;
}
.card-chip-text{
    margin: 0;
    font-size: 0.75em;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
}
.card-chip-icon{
    margin: 5%;
    height: 80%;
    width: auto;
    color: #3D3D3D;
}
.card-body{
    background-color: #f4f4f4;
    width: 100%;
    height: 100%;
    justify-content: flex-start;
    align-items: center;
    min-width: 384px;
    padding-top: 4%;
    padding-bottom: 2%;
    border-radius: 0px 0px 15px 15px;
    -webkit-border-radius: 0px 0px 15px 15px;
    -moz-border-radius: 0px 0px 15px 15px;

}
.card-body-bus{
    width: 60%;
    max-height: 200px;
}
.card-body-pane{

    align-items: center;
    justify-content: space-between;
    width: 80%;
    height: 20%;
    margin-bottom: 1%;
}

.card-body-pane-bus{
    max-width: 50%;
    align-items: center;
}
.card-body-pane-percent{
    font-size: 0.75em;
    margin: 0;
    font-weight: 500;
}
.card-body-pane-toprow{
    justify-content: flex-end;
    align-items: center;

}
.card-body-pane-time{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    }
.card-body-pane-status{
    width: 0.5em;
}

.card-body-pane-arrival{
    margin: 0;
    margin-left: 10px;
    height: auto;
    font-size: 1.5em;
}
.card-body-pane-clock{
    margin: 0;
    font-weight: 400;
    align-self: flex-end;
}
.card-body-list{
    width: 80%;
    height: 80%;
}

.card-body-list-heading{
    border-radius: 40px 40px 40px 40px;
    -webkit-border-radius: 40px 40px 40px 40px;
    -moz-border-radius: 40px 40px 40px 40px;
    background-color: #3A3A3A;
    width: 100%;
    margin-top: 5px;
    left: 0;
}
.card-body-list-heading-text{
    color: #ffffff;
    font-size: 0.1em;
    font-weight: 400;
    align-self: flex-start;
    padding: 1%;
    padding-left: 5%;
    margin:0;
    width: 100%;
}
.card-body-list-destination{
    margin: 1%;
}
.card-body-list-destination-toprow{

    justify-content: space-between;
}
.card-body-list-destination-time{
    font-size: 1em;
    margin: 0;
    font-weight: 500;
}
.card-body-list-destination-stop{
    font-size: 0.8em;
    margin: 0;
    font-weight: 500;
}

.card-body-list-destination-area{
    font-size: 0.5em;
    margin: 0;

    font-weight: 500;
}

.card-body-list-arrival{
    justify-content: space-between;
    margin: 2.5%;
}
.card-body-list-arrival-text{
    font-size: 1em;
    margin: 0;
    font-weight: 500;
}

#loading-modal {
    z-index: 9999;
    width: 100%;
    height: 100%;
    text-align: center;
    position: absolute;
    background-color: #eee;
}

#loading-anim {
    margin-top: 35vh;
    margin-bottom: 35vh;
}

#loading-anim img {
    animation: MoveUpDown 2s ease-out infinite;
    position: relative;
    height: 25vh;
    max-height: 360px;
}

#loading-anim .loading-text {
    font-size: 2em;
    height: 5vh;
}

@keyframes MoveUpDown {
  0% {
    bottom: 0;
  }
  50% {
    bottom: .5em;
  }
  100% {
    bottom: 0;
  }
}

#map-container{
    display: inline-block;
    margin: 0; /* Eliminates White Space */
    width: 100%; /* Eliminates White Space, overidden for desktop */
    height: 100vh;
}

#map{
    height: calc(100vh - 4em);
    top: 4em;
    margin-bottom: -6px; /*removes unsightly gap at the bottom of maps embedd*/

}

.route-block {
    width: 100%;
    min-height: 25px;
    padding-top: 1em;
    padding-bottom: .5em;
    background-color: #ffffff;
}

.route-block.selected {
    background-color: #c0c0c0;
}

.route-block:hover {
    background-color: #e6e6e6;
    cursor: pointer;
}

.route-block.selected:hover {
    background-color: #b7b7b7;
    cursor: pointer;
}

#main-header {
    position: absolute;
    width: 100%;
    height: 4em;
    background-color: #15a;
    color: white;
    z-index: 900;
    display: inline-block;
}

#header-menubutton {
    display: inline-block;
    height: 2em;
}

#header-text {
    display: inline-block;
    height: 2.5em;
    position: absolute;
    top: .75em;
}

#header-text-route {
    font-size: .75em;
}

#header-extra-buttons {
    display: inline-block;
    position: absolute;
    height: 4em;
    right: 0;
}

button.header-button {
    height: 4em;
    width: 4em;
    padding: 1em;
    background-color: transparent;
    border: none;
    outline: none;
}

button.header-button.active {
    background-color: rgba(0, 0, 0, .25);
}

i.material-icons {
    font-size: 2em;
}

#info-menu {
    position: absolute;
    background-color: #eee;
    top: 4em;
    right: 0;
    z-index: 850;
    box-shadow: 0px 0px .5em;
}

.info-menu-is-visible {
    opacity: 1;
    visibility: visible;
    transition-duration: 0.15s;
}

.info-menu-is-hidden {
    opacity: 0;
    visibility: hidden;
    transition-duration: 0.15s;
}

.info-menu-button {
    border: none;
    display: block;
    background-color: transparent;
    padding: 1em;
    width: 100%;
    text-align: left;
}

.info-menu-button div {
    display: inline-block;
    position: relative;
    margin-left: .5em;
    margin-right: 1em;
    bottom: .65em;
}

.info-menu-button:hover {
    background-color: #ddd;
}

.bug-button {
    border: none;
    display: block;
    background-color: #eee;
    padding: 1em;
    margin: 2em auto;
    border-radius: 5px;
    width: 80%;
    text-align: center;
}

/* standard modal */

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1000; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
    background-color: #fefefe;
    margin: 30vh auto;  /* 30 percent of the viewable height for TOP and BOTTOM margins, AUTO for LEFT and RIGHT margins */
    padding: 20px;
    border: 1px solid #888;
    left: 10%;
    right: 10%;
    position: absolute;
    text-align: center;
    z-index: 1;
}

.modal-content a {
    text-decoration: none;
}

.modal-content img {
    width: 225px;
    margin: 1em;
}

.modal-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* The Close Button */
.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

/* sidebar */

#sidebar {
    display: inline-block;
    margin: 0;
    position: absolute;
    top: 0px;
    z-index: 800;
    background-color: rgba(238, 238, 238, 0);
    height: 100vh;
    width: 300px;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    pointer-events: none;
}

.sidebar-closed {
    transform: translateX(-300px)
}

.sidebar-tab-container {
  display: none;
  float: right;
  width: 30px;
  background-color: rgba(0, 0, 0, 0);
  pointer-events: none;
}

.sidebar-tab {
  display: none;
  margin-top: calc(50vh - 20px - 1.4em/2);
  padding: 20px 5px 20px 5px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  box-shadow: 4px 4px 4px rgba(122, 122, 122, 0.5);
  background-color: rgba(255, 255, 255, 1);
  pointer-events: auto;
  position: absolute;
  z-index: 800;
}

.sidebar-main {
  float: left;
  width: 300px;
  height: 100%;
  background-color: #fff;
  pointer-events: auto;
  z-index: 800;
}

.sidebar-title {
  padding-left: 1em;
  padding-right: 1em;
  padding-top: 1em;
  height: 2em;
}

#sidebar-cover {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 700;
    background-color: rgba(0, 0, 0, .7);
}

.sidebar-cover-is-visible {
    opacity: 1;
    visibility: visible;
    transition-duration: 0.15s;
}

.sidebar-cover-is-hidden {
    opacity: 0;
    visibility: hidden;
    transition-duration: 0.15s;
}

.route-block-container {
  border-top: 2px solid #999;
  position: absolute;
  top: 7em;
  bottom: 0;
  overflow-y: auto;
  width: 300px;
  overflow-x: hidden;
}

.route-name {
    position: relative;
    display: inline-block;
    left: .5em;
    max-width: 85%;
}


.infowindow {
    min-width: 250px;
}

.infowindow-left {
    width: 100%;
}

.infowindow-right {
    width: 100%;
}

.stop-name {
    padding-left: .5em;
}

.bus-eta-block {
    display: block;
    width: 100%;
    border-radius: 5px;
    background-color: rgb(250,250,250);
    margin-top: .25em;
    text-align: center;
    padding-top: 1em;
    padding-bottom: 1em;
}

.bus-eta-block .stop-name {
    display: block;
    font-size: 1.5em;
    padding: 1em;
}

.bus-eta-block .bus-eta-time {
    display: block;
    padding-right: 1em;
    padding-left: 1em;
    border-radius: 5px;
    font-weight: bold;
}

.bus-route-name {
    width: 100%;
    text-align: center;
}

.bus-route-name .route-circle {
    width: .75em;
    height: .75em;
    margin-left: 0;
}

.bus-number {
    width: 100%;
    text-align: center;

}

.bus-percentage {
    width: 100%;
    background-color: #eee;
    border-radius: 5px;
    height: 25px;
    text-align: center;
}

.bus-percentage-bar {
    height: 25px;
    border-radius: 5px;
    background: linear-gradient(to bottom, rgba(109,179,242,1) 0%,rgba(84,163,238,1) 50%,rgba(54,144,240,1) 51%,rgba(30,105,222,1) 100%);
}

.bus-percentage-text {
    position: relative;
    font-weight: bold;
    top: -20px;
}


.bus-block {
    width: 100%;
    border-radius: 5px;
    background-color: #eee;
    margin-top: .25em;
}

.bus-name {
    display: inline-block;
    padding-left: 1em;

}

.bus-time {
    display: inline-block;
    padding-right: 1em;
    padding-left: 1em;
    border-radius: 5px;
    font-weight: bold;
    float: right;
}

.bus-time.normal {
    background-color: #ddd;
}

.bus-time.late {
    background-color: #d51;
}



.route-circle{
    border-radius: 50%;
    width: 1em;
    height: 1em;
    margin-left: 1em;
    display: inline-block;
    background-color: teal;
}

.menubutton {
    padding: 1em 1em;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}

.menubutton-box {
    width: 2em;
    height: 2em;
    display: inline-block;
    position: relative;
}

.menubutton-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}

.menubutton-inner, .menubutton-inner::before, .menubutton-inner::after {
    width: 2em;
    height: 2px;
    background-color: #FFF;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}
.menubutton-inner::before, .menubutton-inner::after {
    content: "";
    display: block;
}
.menubutton-inner::before {
    top: -10px;
}
.menubutton-inner::after {
    bottom: -10px;
}

/* Animation */
.menubutton.is-active .menubutton-inner {
    transform: rotate(-180deg);
}
.menubutton.is-active .menubutton-inner::before {
    transform: translate3d(8px, 2px, 0) rotate(45deg) scale(0.7, 1);
}
.menubutton.is-active .menubutton-inner::after {
    transform: translate3d(8px, -2px, 0) rotate(-45deg) scale(0.7, 1);
}

/* BROWSER UPGRADE STYLING */
body .buorg {
    background-position: 8px 17px;
    position:absolute;
    position:fixed;
    z-index:111111;
    width:100%;
    height: 100%;
    top:0px;
    left:0px;
    border-bottom:1px solid #A29330;
    text-align:left;
    cursor:pointer;
    background-color: #fff8ea;
    font: 17px Calibri,Helvetica,Arial,sans-serif;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
body .buorg div {
    padding: 11px 12px 11px 30px;
    line-height: 1.7em;
}
body .buorg div a,.buorg div a:visited {
    text-indent: 0;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 0 2px rgba(0,0,0,0.4);
    padding: 1px 10px;
    border-radius: 4px;
    font-weight: normal;
    background: #5ab400;
    white-space: nowrap;
    margin: 0 2px; display: inline-block;
}

body #buorgig{
    background-color: #edbc68;
}

@media only screen and (max-width: 700px){
.buorg div {
    padding:5px 12px 5px 9px;
    text-indent: 22px;
    line-height: 1.3em;
}
.buorg {
    background-position: 9px 8px;}
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}

/* MOBILE FIRST GRID SYSTEM */

.container {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.row {
  position: relative;
  width: 100%;
}

.row [class^="col"] {
  float: left;
  margin: 0.5rem 2%;
  min-height: 0.125rem;
}

.col1,
.col2,
.col3,
.col4,
.col5,
.col6,
.col7,
.col8,
.col9,
.col10,
.col11,
.col12 {
  width: 96%;
}

.col1-sm {
  width: 4.33%;
}

.col2-sm {
  width: 12.66%;
}

.col3-sm {
  width: 21%;
}

.col4-sm {
  width: 29.33%;
}

.col5-sm {
  width: 37.66%;
}

.col6-sm {
  width: 46%;
}

.col7-sm {
  width: 54.33%;
}

.col8-sm {
  width: 62.66%;
}

.col9-sm {
  width: 71%;
}

.col10-sm {
  width: 79.33%;
}

.col11-sm {
  width: 87.66%;
}

.col12-sm {
  width: 96%;
}

.row::after {
	content: "";
	display: table;
	clear: both;
}

.hidden-sm {
  display: none;
}

@media only screen and (orientation: landscape) {
    .infowindow-left {
        width: 48%;
        display: inline-block;
        margin-right: 4%
    }

    .infowindow-right {
        width: 48%;
        display: inline-block;
        float: right;
    }
}

@media only screen and (min-width: 33.75em) {  /* 540px */
  .container {
    width: 80%;
  }
}

@media only screen and (min-width: 45em) {  /* 720px */

  #map-container {
  }

  #sidebar {

  }

  #sidebar-cover {
      display: none;
  }

  .col1 {
    width: 4.33%;
  }

  .col2 {
    width: 12.66%;
  }

  .col3 {
    width: 21%;
  }

  .col4 {
    width: 29.33%;
  }

  .col5 {
    width: 37.66%;
  }

  .col6 {
    width: 46%;
  }

  .col7 {
    width: 54.33%;
  }

  .col8 {
    width: 62.66%;
  }

  .col9 {
    width: 71%;
  }

  .col10 {
    width: 79.33%;
  }

  .col11 {
    width: 87.66%;
  }

  .col12 {
    width: 96%;
  }

  .hidden-sm {
    display: block;
  }

    .infowindow-left {
        width: 100%;
        margin-right: 0;
    }

    .infowindow-right {
        width: 100%;
    }
}

@media only screen and (min-width: 60em) { /* 960px */
  .container {
    width: 75%;
    max-width: 60rem;
  }
  .modal-content {
    left: 30%;
    right: 30%;
}
}
