.clear { clear: both; }
.push-down { margin-bottom: 1em; }
.push-right { margin-right: 1em; }
.hidden { display: none; }
.text-bold { font-weight: bold; }
.nav-title { font-size: 1.5rem; }

main {
  padding-top: 3rem;
  flex: 1 0 auto;
}

div.page-agreements th { cursor: pointer; }
div.Select-menu-outer { z-index: 1001; }

select {
  padding:
    calc(.5em - 1px)
    calc(.75em - 1px)
    calc(.5em - 1px)
    calc(.75em - 1px);

  border-radius: 4px;
  border: 1px solid transparent;
  border-color: #e5e7eb;
  width: 100%;
}

/* sticky footer */
html, body {
  height: 100%;
}

body {
  display: flex;
  flex-direction: column;
}

div.loading-indicator { justify-content: center; }
div.error-indicator { padding: 1rem; overflow-y: auto; }
div.error-indicator h1 { font-size: 2rem; font-weight: bold; margin-bottom: 1rem; }
div.error-indicator ul { margin-left: 1rem; list-style: disc; }

.home-pictures {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
.home-pictures figure {
  margin-left: 1em;
  margin-right: 1em;
}

.legend-item {
  display: flex;
  flex-direction: row;
  align-items: top;
}

.legend-item .svg-icon {
  margin-right: 1em;
}

section.text p, section.text ul { margin-bottom: .5em; }
section.text ul { margin-left: 2em; list-style: disc; }
section.text figure { border: 1px solid #4a4a4a; margin: .5em; }

.footer {
  vertical-align: center;
  padding: 1.5rem !important;
}
.footer figure {
  height: 80px;
  margin: .5em;
}

.footer .content {
  display: inline-block;
}

button i { margin-right: 1em; }


/* header colors */
header nav {
  color: #fafafa !important;
  background-color: #4a4a4a !important;
}
header nav a { color: #fafafa !important; }
header nav button { color: #fafafa !important; }

/* link colors */
a { color: #3273dc !important; }
div.tabs a { color: #363636 !important; }
a.is-info { color: #fafafa !important; }
.leaflet-control-container a { color: #4a4a4a !important; }

.navbar-menu { background-color: #4a4a4a !important; }
.navbar-item:hover { background-color: #5a5a5a !important; }

ul.contact { margin-bottom: 5em; }

/* agreements chart */
.chart, .chart ul, .chart li { position: relative; }
.chart > ul { padding-bottom: 0.5em; padding-left: 0 !important; }
.chart > ul > li::before { border-top: none !important; }
.chart > ul > li::after { border-left: none; }
.chart ul { list-style: none; padding-left: 5%; }
.chart li.spacer { display: block; height: .1em; }
.chart li { padding-bottom: .5em; }
.chart li::before, .chart li::after { content: ""; position: absolute; left: -12px; }
.chart li:not(.spacer)::before { border-top: 1px solid #363636; top: 9px; width: 8px; height: 0; }
.chart li::after { border-left: 1px solid #363636; height: 100%; width: 0px; top: 2px; }
.chart ul > li:last-child::after { height: 8px; }
.chart .chart-label { display: flex; align-items: center; }
.chart .svg-icon { margin-right: .35em; }
.chart .title { margin-bottom: 0 !important; }

/* markers */
.svg-icon { display: inline-block; }

.marker-cluster-custom, .svg-icon-wrapped, .svg-icon-balloon {
  border-width: 0px;
  border-radius: 50%;
}

.marker-cluster-custom, .svg-icon-wrapped, .svg-icon-balloon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.marker-cluster-custom {
  background: rgba(255, 255, 255, 0.8);
  color: #363636;
  height: 40px;
  line-height: 40px;
  width: 40px;
}

.svg-icon-wrapped { background-color: rgba(0, 0, 0, 0.1); }
.svg-icon-balloon { background-color: rgba(255, 255, 255, 0.8); }
.svg-icon.svg-icon-color-default { background-color: rgba(0, 0, 0, 0); }
.svg-icon.svg-icon-color-0 { background-color: rgba(0, 0, 0, 0.1); }
.svg-icon.svg-icon-color-1 { background-color: rgba(0, 255, 0, 0.6); }
.svg-icon.svg-icon-color-2 { background-color: rgba(255, 255, 0, 0.6); }
.svg-icon.svg-icon-color-3 { background-color: rgba(255, 0, 0, 0.6); }
.svg-icon.svg-icon-color-4 { background-color: rgba(0, 0, 255, 0.6); }
.svg-icon-dark { opacity: 0.4; }


/* leaflet */

.map-area {
  width: 100%;
  height: 600px;
}
.leaflet-container {
  background-color: rgba(0, 0, 0, 0);
  width: 100%;
  height: 100%;
}
.leaflet-control-attribution { display: none; }
.leaflet-popup-close-button {
  margin: 5px 5px 0 0;
  color: #000 !important;
}
.leaflet-popup-content-wrapper section { margin-bottom: 1em; }
