@charset "UTF-8";
@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-Light.woff2"), url("/fonts/Lemonmilk-Light.woff");
  font-weight: 1 399;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-LightItalic.woff2"), url("/fonts/Lemonmilk-LightItalic.woff");
  font-weight: 1 399;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-Regular.woff2"), url("/fonts/Lemonmilk-Regular.woff");
  font-weight: 400 699;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-RegularItalic.woff2"), url("/fonts/Lemonmilk-RegularItalic.woff");
  font-weight: 400 699;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-Medium.woff2"), url("/fonts/Lemonmilk-Medium.woff");
  font-weight: 700 899;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-MediumItalic.woff2"), url("/fonts/Lemonmilk-MediumItalic.woff");
  font-weight: 700 899;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-Bold.woff2"), url("/fonts/Lemonmilk-Bold.woff");
  font-weight: 900 1000;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Lemonmilk';
  src: url("/fonts/Lemonmilk-BoldItalic.woff2"), url("/fonts/Lemonmilk-BoldItalic.woff");
  font-weight: 900 1000;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Thin"), local("Roboto-Thin"), url("/fonts/Roboto-Thin.woff2"), url("/fonts/Roboto-Thin.woff");
  font-weight: 1 199;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto ThinItalic"), local("Roboto-ThinItalic"), url("/fonts/Roboto-ThinItalic.woff2"), url("/fonts/Roboto-Thin.woff");
  font-weight: 1 199;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Light"), local("Roboto-Light"), url("/fonts/Roboto-Light.woff2"), url("/fonts/Roboto-Light.woff");
  font-weight: 200 399;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto LightItalic"), local("Roboto-LightItalic"), url("/fonts/Roboto-LightItalic.woff2"), url("/fonts/Roboto-LightItalic.woff");
  font-weight: 200 399;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Regular"), local("Roboto-Regular"), url("/fonts/Roboto-Regular.woff2"), url("/fonts/Roboto-Regular.woff");
  font-weight: 400 599;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Italic"), local("Roboto-Italic"), url("/fonts/Roboto-Italic.woff2"), url("/fonts/Roboto-Italic.woff");
  font-weight: 400 599;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Medium"), local("Roboto-Medium"), url("/fonts/Roboto-Medium.woff2"), url("/fonts/Roboto-Medium.woff");
  font-weight: 600 799;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto MediumItalic"), local("Roboto-MediumItalic"), url("/fonts/Roboto-MediumItalic.woff2"), url("/fonts/Roboto-MediumItalic.woff");
  font-weight: 600 799;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Bold"), local("Roboto-Bold"), url("/fonts/Roboto-Bold.woff2"), url("/fonts/Roboto-Bold.woff");
  font-weight: 800 899;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto BoldItalic"), local("Roboto-BoldItalic"), url("/fonts/Roboto-BoldItalic.woff2"), url("/fonts/Roboto-BoldItalic.woff");
  font-weight: 800 899;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto Black"), local("Roboto-Black"), url("/fonts/Roboto-Black.woff2"), url("/fonts/Roboto-Black.woff");
  font-weight: 900 1000;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Roboto';
  src: local("Roboto BlackItalic"), local("Roboto-BlackItalic"), url("/fonts/Roboto-BlackItalic.woff2"), url("/fonts/Roboto-BlackItalic.woff");
  font-weight: 900 1000;
  font-style: italic;
  font-display: swap; }

html, body {
  height: 100%; }

body {
  display: flex;
  flex-direction: column;
  background-color: whitesmoke;
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  overscroll-behavior-y: contain; }

h1 {
  margin-top: 20px; }

@media (max-width: 600px) {
  .template__footer {
    display: none !important; } }

.template__footer {
  flex-shrink: 0;
  padding: 5px;
  background-color: #f2f2f2;
  border-top: 1px solid #c6c4c4;
  width: 100%;
  height: 45px;
  z-index: 1000;
  font-size: medium;
  user-select: none;
  text-align: center; }

@media (max-width: 599px) {
  .ffzmap__menu {
    display: none !important; } }

.ffzmap__menu {
  height: 100%;
  width: 200px;
  background-color: #2A395B;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }

.ffzmap__menu__items {
  list-style: none;
  padding-left: 0;
  width: 200px !important; }

.ffzmap__menu__items__item__a {
  color: rgba(255, 255, 255, 0.8) !important;
  text-transform: uppercase;
  height: 50px;
  display: flex;
  align-items: center;
  transition: background-color 0.2s,color 0.2s; }

.ffzmap__menu__items__item__a:hover {
  cursor: pointer;
  text-decoration: none; }

.ffzmap__menu__items__item__a:active {
  text-decoration: none; }

.ffzmap__menu__items__item__a:visited {
  text-decoration: none; }

.ffzmap__menu__items__item__a:link {
  text-decoration: none; }

.ffzmap__menu__items__item__a--selected, .ffzmap__menu__items__item__a:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: white !important; }

@media (min-width: 600px) {
  .ffzmap__mobile-menu {
    display: none; } }

.ffzmap__mobile-menu__items {
  display: flex;
  flex-direction: row;
  position: relative;
  background: #3c3f41;
  width: 100%;
  height: 115px;
  justify-content: space-around; }

.ffzmap__mobile-menu__items:after {
  top: -10px;
  display: block;
  position: absolute;
  content: '';
  border-radius: 50%;
  background: #3c3f41;
  width: 100%;
  height: 20px;
  border-top: 2px solid #232327; }

.ffzmap__mobile-menu__items__item {
  z-index: 100000;
  border-right: 0.5px solid #878f95;
  width: 20%;
  display: flex;
  justify-content: center;
  position: relative;
  top: 3px; }

.ffzmap__mobile-menu__items__item__a {
  height: 32px; }

.ffzmap__mobile-menu__items__item__a--selected:after {
  content: '';
  float: left;
  background-color: #45d881;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  position: relative;
  top: 3px; }

.ffzmap__mobile-menu__items__item svg path {
  fill: white; }

.ffzmap__mobile-menu-more {
  width: calc(100vw - 20px);
  height: calc(100vh - 220px);
  border: 1px solid;
  border-radius: 20px;
  position: fixed;
  background-color: #2A395B;
  left: 10px;
  top: 70px;
  display: none;
  z-index: 10000; }

.ffzmap__mobile-menu-more__items {
  list-style: none;
  padding-left: 0;
  width: 100%; }

.ffzmap__mobile-menu-more__items__item__a {
  color: rgba(255, 255, 255, 0.8) !important;
  text-transform: uppercase;
  height: 50px;
  display: flex;
  align-items: center;
  transition: background-color 0.2s,color 0.2s;
  padding-left: 20px; }

.ffzmap__mobile-menu-more__items__item__a:hover {
  cursor: pointer;
  text-decoration: none; }

.ffzmap__mobile-menu-more__items__item__a:active {
  text-decoration: none; }

.ffzmap__mobile-menu-more__items__item__a:visited {
  text-decoration: none; }

.ffzmap__mobile-menu-more__items__item__a:link {
  text-decoration: none; }

.ffzmap__mobile-menu-more__items__item__a--selected, .ffzmap__mobile-menu-more__items__item__a:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: white !important; }

.ffzmap__mobile-menu-more__items__close {
  text-align: right;
  font-size: 25px;
  padding-right: 10px; }

.ffzmap__mobile-menu-more__items__close a {
  text-decoration: none;
  color: white !important; }

.ffzmap__mobile-menu-more__items__close a:hover,
.ffzmap__mobile-menu-more__items__close a:active,
.ffzmap__mobile-menu-more__items__close a:visited,
.ffzmap__mobile-menu-more__items__close a:link {
  text-decoration: none;
  color: white !important; }

@media (max-width: 599px) {
  .ffzmap {
    flex-direction: column;
    height: calc(100vh - 115px) !important; }
  .ffzmap__main {
    width: 100vw !important; }
  #map {
    height: calc(100vh - 115px) !important; }
  .mapboxgl-ctrl-geocoder {
    width: calc(100vw - 20px); } }

.ffzmap {
  flex: 1 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  height: calc(100vh - 45px);
  width: 100%; }

.ffzmap__main {
  height: 100%;
  overflow-y: scroll; }

.ffzmap__main h1 {
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main .paragraph-text {
  margin-left: 20px; }

.ffzmap-tooltip {
  background: #333;
  color: white;
  font-weight: bold;
  padding: 4px 8px;
  font-size: 13px;
  border-radius: 4px;
  display: none; }

.ffzmap-tooltip[data-show] {
  display: block; }

.ffzmap-tooltip-arrow,
.ffzmap-tooltip-arrow::before {
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit; }

.ffzmap-tooltip-arrow {
  visibility: hidden; }

.ffzmap-tooltip-arrow::before {
  visibility: visible;
  content: '';
  transform: rotate(45deg); }

.ffzmap-tooltip[data-popper-placement^='top'] > .ffzmap-tooltip-arrow {
  bottom: -4px; }

.ffzmap-tooltip[data-popper-placement^='bottom'] > .ffzmap-tooltip-arrow {
  top: -4px; }

.ffzmap-tooltip[data-popper-placement^='left'] > .ffzmap-tooltip-arrow {
  right: -4px; }

.ffzmap-tooltip[data-popper-placement^='right'] > .ffzmap-tooltip-arrow {
  left: -4px; }

.ffzmap__login {
  padding: 20px;
  border-radius: 5px;
  border: 1px solid #1C5E16;
  background-color: #45D881; }

.ffzmap__login h1 {
  font-size: 1.5rem; }

.ffzmap__main__new-zone-back-to-start-banner {
  background-color: #e3480b;
  border-bottom: 1px solid;
  text-align: center; }

.ffzmap__main__new-zone-back-to-start-banner p {
  margin-bottom: 10px;
  padding-top: 5px;
  padding-left: 5px;
  padding-right: 5px; }

.ffzmap__main__new-zone-back-to-start-banner button {
  margin-bottom: 10px; }

.ffzmap__main__new-zone {
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main__new-zone button {
  margin-top: 10px; }

.ffzmap__main__new-zone__badge {
  height: 120px; }

.ffzmap__main__new-zone__badge img {
  height: 120px; }

.ffzmap__main__new-zone__page4-questions {
  margin-top: 20px; }

.ffzmap__main__admin__start {
  width: 100%;
  height: calc(100% - 80px);
  display: flex;
  justify-content: center;
  align-items: center; }

.ffzmap__main__admin__start__buttons {
  display: flex;
  flex-direction: row; }

.ffzmap__main__admin__start__buttons__button {
  display: flex;
  flex-direction: column;
  border: 1px solid #2a395b;
  border-radius: 5px;
  background-color: #d9dbe2;
  cursor: pointer;
  margin: 10px; }

.ffzmap__main__admin__start__buttons__button__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 180px;
  height: 180px; }

.ffzmap__main__admin__start__buttons__button__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 180px;
  height: 30px; }

.ffzmap__main__admin__zones__buttons {
  display: flex;
  justify-content: end;
  padding: 20px; }

.ffzmap__main__admin__zones__table {
  padding-top: 10px; }

#zones-table tbody tr {
  cursor: pointer; }

#zones-table tbody tr:hover {
  background-color: #d6eeee; }

.ffzmap__main__admin__zec-list__table {
  padding-top: 10px; }

#zec-table tbody tr {
  cursor: pointer; }

#zec-table tbody tr:hover {
  background-color: #d6eeee; }

.ffzmap__main__admin__new-zone {
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main__admin__new-zone button {
  margin-top: 10px; }

.ffzmap__main__admin__update-log__buttons {
  display: flex;
  justify-content: end;
  padding: 20px; }

.ffzmap__main__admin__update-log__buttons__inner {
  text-align: end; }

.ffzmap__main__admin__update-log__buttons__next-scheduled {
  font-style: italic; }

.ffzmap__main__admin__update-log__table {
  padding-top: 10px; }

#update-table tbody tr {
  cursor: pointer; }

#update-table tbody tr:hover {
  background-color: #d6eeee; }

.ffzmap__main__admin__update-log-details {
  height: calc(100% - 70px); }

.ffzmap__main__admin__update-log-details__status {
  padding-left: 10px;
  padding-right: 10px;
  border-bottom: 1px solid #2a395b;
  background-color: #A2A2A2;
  height: 190px; }

.ffzmap__main__admin__update-log-details__update-number {
  padding-top: 5px; }

.ffzmap__main__admin__update-log-details__status__started {
  margin-top: 10px; }

.ffzmap__main__admin__update-log-details__status__current {
  margin-top: 10px;
  margin-bottom: 10px; }

.ffzmap__main__admin__update-log-details__log-items {
  width: 100%;
  height: calc(100% - 135px);
  overflow-y: scroll;
  background-color: #08132c; }

.ffzmap__main__admin__update-log-details__log-items__item__chevron {
  padding-left: 5px;
  cursor: pointer; }

.ffzmap__main__admin__update-log-details__log-items__item__chevron__svg--turned {
  transform: rotate(90deg); }

.ffzmap__main__admin__update-log-details__log-items__item__time {
  color: #939393;
  padding-left: 5px;
  padding-right: 5px; }

.ffzmap__main__admin__update-log-details__log-items__item__message {
  padding-left: 5px;
  padding-right: 5px; }

.ffzmap__main__admin__update-log-details__log-items__item__details {
  color: white;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.1); }

.ffzmap__main__admin__update-log-details__log-items__item__details__table {
  margin: 10px;
  width: 100%; }

.ffzmap__main__admin__update-log-details__log-items__item__details__buttons {
  display: flex;
  justify-content: center;
  padding-bottom: 10px; }

@keyframes rotate-spinner {
  from {
    rotate: none; }
  to {
    rotate: 180deg; } }

.timer-icon svg {
  animation-name: rotate-spinner;
  animation-duration: 2s; }

.ffzmap__main__admin__settings {
  width: 100%;
  height: calc(100% - 80px);
  display: flex;
  justify-content: center;
  align-items: center; }

.ffzmap__main__admin__settings__buttons {
  display: flex;
  flex-direction: row; }

.ffzmap__main__admin__settings__buttons__button {
  display: flex;
  flex-direction: column;
  border: 1px solid #2a395b;
  border-radius: 5px;
  background-color: #d9dbe2;
  cursor: pointer;
  margin: 10px; }

.ffzmap__main__admin__settings__buttons__button__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 180px;
  height: 180px; }

.ffzmap__main__admin__settings__buttons__button__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 180px;
  height: 60px;
  text-align: center; }

.ffzmap__main__admin__checklist {
  width: 100%;
  height: calc(100% - 80px);
  display: flex;
  flex-direction: column; }

.ffzmap__main__admin__checklist__status {
  padding-left: 10px;
  padding-right: 10px;
  border-bottom: 1px solid #2a395b;
  background-color: #A2A2A2; }

.ffzmap__main__admin__checklist__status__information {
  display: flex;
  margin-top: 10px;
  margin-bottom: 10px; }

.ffzmap__main__admin__checklist__status__information__icon {
  display: flex;
  align-items: center;
  padding-right: 10px; }

.ffzmap__main__admin__checklist__status__information__icon svg {
  fill: #eaa322; }

.ffzmap__main__admin__checklist__status__last-updated-at {
  margin-top: 10px; }

.ffzmap__main__admin__checklist__status__last-updated-by {
  margin-top: 10px;
  margin-bottom: 10px; }

.ffzmap__main__admin__checklist__main {
  padding: 20px; }

.ffzmap__main__admin__checklist__main__table__item > td:not(:first-child) {
  cursor: pointer; }

.ffzmap__main__admin__checklist__main__table__item:hover > td {
  background-color: #d6eeee; }

.ffzmap__main__admin__checklist__main__table__item__up-down {
  background-color: #ececec;
  display: flex;
  justify-content: space-around;
  border: 1px dashed darkgray;
  border-radius: 5px; }

.ffzmap__main__admin__checklist__main__table__item__up-down__button svg {
  cursor: pointer; }

.ffzmap__main__admin__checklist__main__table__item__up-down__button svg:hover {
  fill: green; }

.ffzmap__main__admin__zone {
  padding-top: 30px; }

.ffzmap__main__admin__zone--readonly {
  background-color: orange;
  border-bottom: 1px solid #882d11;
  margin-bottom: 10px;
  padding: 5px; }

.ffzmap__main__admin__zone__part1 {
  display: flex;
  justify-content: space-between; }

.ffzmap__main__admin__zone__part1__column {
  width: 80%;
  padding-left: 20px;
  padding-right: 20px; }

.ffzmap__main__admin__zone__part1__column__map {
  height: 500px;
  border: 1px solid #404040;
  border-radius: 5px; }

.ffzmap__main__admin__zone__part1__column__case-study {
  border: 1px solid #781081;
  padding: 5px;
  border-radius: 5px;
  background-color: #b059b7;
  font-weight: 200;
  width: fit-content; }

.ffzmap__main__admin__zone__part1__column__case-study:hover {
  cursor: pointer; }

.ffzmap__main__admin__zone__part1__column__case-study svg {
  width: 16px; }

.ffzmap__main__admin__zone__part1__column__notes--note-with-content {
  border: 1px solid #757575;
  border-radius: 3px;
  padding: 3px;
  max-height: 100px;
  overflow-y: scroll;
  background-color: #d4eadd; }

.ffzmap__main__admin__zone__part2 {
  border-top: 1px solid;
  padding-top: 10px;
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main__admin__zone__part2 th {
  background-color: green; }

.ffzmap__main__admin__zone__part2__td {
  cursor: pointer; }

.ffzmap__main__admin__zone__part2__td-odd td {
  background-color: #bcf5bc; }

.ffzmap__main__admin__zone__part2__td-even td {
  background-color: #e0f5e0; }

.admin-edit-icon {
  cursor: pointer; }

.admin-edit-icon svg:hover {
  transform: rotate(-20deg); }

.representatives-admin-table {
  width: 100%; }

.representatives-table-button {
  cursor: pointer; }

.representatives-table-button:hover {
  position: relative;
  top: -3px; }

.representatives-table-button:hover svg path.fa-primary {
  fill: #146714; }

.representatives-table-button:hover svg path.fa-secondary {
  fill: #28ed28; }

.representatives-table-button.representatives-table-button-delete:hover svg path.fa-primary {
  fill: #b22222; }

.representatives-table-button.representatives-table-button-delete:hover svg path.fa-secondary {
  fill: #f94f4f; }

.representatives-new-button {
  cursor: pointer;
  width: 56px; }

.representatives-new-button:hover {
  position: relative;
  top: -3px; }

.representatives-new-button:hover svg path.fa-primary {
  fill: #146714; }

.representatives-new-button:hover svg path.fa-secondary {
  fill: #28ed28; }

.zone-representatives-textarea {
  resize: none;
  width: 100%;
  height: 200px;
  border: 1px solid darkgray;
  background-color: #e9f2ff;
  border-radius: 5px; }

.ffzmap__main__admin__zec {
  padding-top: 30px; }

.ffzmap__main__admin__zec__part1 {
  display: flex;
  justify-content: space-between; }

.ffzmap__main__admin__zec__part1__column {
  width: 80%;
  padding-left: 20px;
  padding-right: 20px; }

.ffzmap__main__admin__zec__part1__column__map {
  height: 500px;
  border: 1px solid #404040;
  border-radius: 5px; }

.ffzmap__main__admin__zec__part2 {
  border-top: 1px solid;
  padding-top: 10px;
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main__admin__zec__part2 th {
  background-color: #1c48ca; }

.ffzmap__main__admin__zec__part2 td {
  background-color: #a5b7ff; }

.ffzmap__main__admin__zec--permission-none {
  background-color: #b90000;
  border-bottom: 1px solid #260000;
  margin-bottom: 10px;
  padding: 5px; }

.ffzmap__main__admin__zec--permission-partial {
  background-color: orange;
  border-bottom: 1px solid #882d11;
  margin-bottom: 10px;
  padding: 5px; }

.ffzmap__main__admin__zec--permission-all {
  background-color: green;
  border-bottom: 1px solid #003500;
  margin-bottom: 10px;
  padding: 5px; }

.ffzmap__main__admin__case-studies {
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 30px; }

.ffzmap__main__admin__case-studies__image {
  width: calc(100% + 40px);
  position: relative;
  left: -20px;
  text-align: center; }

#zone-case-studies-img {
  border: 1px solid #919191;
  border-radius: 5px;
  height: 300px; }

.ffzmap__main__admin__case-studies__pdfs__table {
  padding-top: 10px; }

.ffzmap__main__admin__case-studies__pdfs__table__title {
  font-weight: bold;
  font-size: larger; }

.ffzmap__main__admin__case-studies__pdfs__table__download:hover,
.ffzmap__main__admin__case-studies__pdfs__table__delete:hover {
  cursor: pointer; }

.ffzmap__main__admin__case-studies__image__buttons {
  margin-top: .8rem; }

.ffzmap__main__admin__case-studies__image__buttons__button {
  position: relative;
  display: inline-block;
  top: -0.4rem;
  border-right: 1px solid #535f7b;
  padding: .4rem 15px .4rem 15px; }

.ffzmap__main__admin__case-studies__image__buttons__button a {
  font-style: italic;
  color: black !important;
  cursor: pointer; }

.ffzmap__main__admin__call {
  padding-left: 20px;
  padding-right: 20px; }

.ffzmap__main__admin__call--in-progress {
  background-color: green;
  border-bottom: 1px solid #003500;
  padding: 5px;
  display: flex;
  align-items: center;
  justify-content: space-between; }

.ffzmap__main__admin__call__part1 {
  display: flex;
  justify-content: space-between; }

.ffzmap__main__admin__call__part1__details {
  width: calc(100% - 564px); }

.ffzmap__main__admin__call__part1__events {
  width: 500px; }

.ffzmap__main__admin__call__part1__details,
.ffzmap__main__admin__call__part1__events {
  height: 450px;
  display: flex;
  justify-content: center;
  margin-top: 20px;
  background-color: lightgray;
  border: 1px solid black;
  border-radius: 5px;
  overflow-y: scroll;
  overflow-x: hidden; }

.ffzmap__main__admin__call__part1__details__scrollable {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px; }

.ffzmap__main__admin__call__part1__events__scrollable__item {
  height: 100px;
  width: 500px;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid darkgray; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin {
  width: 249px;
  display: flex;
  align-items: center;
  padding-left: 10px; }

.ffzmap__main__admin__call__part1__events__scrollable__item__representative {
  width: 249px;
  display: flex;
  align-items: center;
  padding-right: 10px; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin__details,
.ffzmap__main__admin__call__part1__events__scrollable__item__representative__details {
  width: 173px;
  height: 90px; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin__details {
  text-align: left;
  padding-left: 5px;
  display: flex;
  flex-direction: column;
  justify-content: center; }

.ffzmap__main__admin__call__part1__events__scrollable__item__representative__details {
  text-align: right;
  padding-right: 5px;
  display: flex;
  flex-direction: column;
  justify-content: center; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin__details__time,
.ffzmap__main__admin__call__part1__events__scrollable__item__representative__details__time {
  font-weight: bold; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin__details__description,
.ffzmap__main__admin__call__part1__events__scrollable__item__representative__details__description {
  font-style: italic; }

.ffzmap__main__admin__call__part1__events__scrollable__item__admin__person,
.ffzmap__main__admin__call__part1__events__scrollable__item__representative__person {
  width: 70px;
  height: 70px;
  background-color: white;
  border-radius: 20px;
  border: 3px solid black;
  display: flex;
  justify-content: center;
  align-items: center; }

.ffzmap__main_admin__call__part2 {
  padding-top: 20px; }

#call-notes {
  width: 100%;
  height: 100px;
  border-radius: 5px;
  border: 1px solid black; }

.ffzmap__main_admin__call__part2__update-message {
  color: green;
  display: none; }

.ffzmap__main__admin__emails__status {
  display: flex;
  padding: 20px;
  flex-direction: column;
  align-items: end; }

.ffzmap__main__admin__email__main__parsed-html {
  padding: 5px;
  background-color: orange;
  margin-bottom: 5px;
  border-radius: 5px;
  border: 1px solid #9e6702; }

.ffzmap__main__admin__emails__status__details {
  background: repeating-linear-gradient(135deg, #e5e4e4, #e5e4e4 8px, #dadada 8px, #dadada 16px);
  width: 500px;
  padding: 5px;
  border: 1px solid #c7c7c7;
  border-radius: 5px;
  margin-bottom: 10px; }

.ffzmap__main__admin__emails__status__details__progress {
  height: 15px;
  width: 100%;
  background-color: white;
  border-radius: 2px; }

.ffzmap__main__admin__emails__status__details__progress__inner {
  width: 0;
  background: repeating-linear-gradient(135deg, #146714, #146714 4px, #0e450eff 4px, #0e450eff 8px);
  display: block;
  height: 15px;
  border-radius: 2px; }

.ffzmap__main__admin__emails__status__latest-status {
  width: 500px; }

.ffzmap__main__admin__emails__status__latest-status__did-not-complete {
  display: none;
  background-color: orange;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #7e5200;
  margin-bottom: 10px; }

.ffzmap__main__admin__emails__status__latest-status__next-due {
  text-align: right;
  font-style: italic; }

.ffzmap__main__admin__emails__status__latest-status__disabled {
  text-align: right;
  font-style: italic; }

.ffzmap__main__admin__emails__table {
  padding-top: 10px; }

#email-table tbody tr {
  cursor: pointer; }

#email-table tbody tr:hover {
  background-color: #d6eeee; }

.ffzmap__main__admin__email__status {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid #2a395b;
  background-color: #A2A2A2; }

.ffzmap__main__admin__email__status__datetime,
.ffzmap__main__admin__email__status__from,
.ffzmap__main__admin__email__status__to,
.ffzmap__main__admin__email__status__direction,
.ffzmap__main__admin__email__status__folder,
.ffzmap__main__admin__email__status__link {
  margin-top: 10px; }

.ffzmap__main__admin__email__main {
  padding: 10px; }

.ffzmap__main__admin__email__main__content {
  resize: none;
  width: 100%;
  height: 300px;
  border: 1px solid darkgray;
  background-color: #e9f2ff;
  border-radius: 5px; }

.ffzmap__main__admin__email__main__attachments {
  margin-top: 10px; }

.ffzmap__main__admin__email__main__attachments__heading {
  font-weight: bold; }

.ffzmap__main__admin__email__main__attachments__table-wrapper {
  padding: 0;
  border: 1px solid darkgray;
  border-radius: 5px;
  overflow-y: scroll;
  overflow-x: hidden;
  max-height: 250px; }

.ffzmap__main__admin__email__main__attachments__table-wrapper table {
  margin: 0 !important; }

#admin-selector,
#representative-selector {
  margin-top: 20px; }

#ffz-selector-description {
  padding: 5px;
  margin: 10px;
  border: 1px dashed #838282;
  border-radius: 5px;
  background-color: aliceblue;
  overflow-y: scroll;
  height: 220px; }

.ffzmap__main__admin__validation {
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  justify-content: center;
  padding-top: 20px; }

.ffzmap__main__admin__validation--flagged,
.ffzmap__main__admin__validation--pending,
.ffzmap__main__admin__validation--in-progress,
.ffzmap__main__admin__validation--validated,
.ffzmap__main__admin__validation--rejected {
  padding: 5px;
  display: flex;
  align-items: center;
  justify-content: space-between; }

.ffzmap__main__admin__validation--flagged {
  background-color: #464646;
  color: white;
  border-bottom: #303030; }

.ffzmap__main__admin__validation--pending {
  background-color: #f57900;
  border-bottom: #864500; }

.ffzmap__main__admin__validation--in-progress {
  background-color: #5c3566;
  border-bottom: #351f3a;
  color: white; }

.ffzmap__main__admin__validation--validated {
  background-color: green;
  border-bottom: 1px solid #003500; }

.ffzmap__main__admin__validation--rejected {
  background-color: #cc0000;
  border-bottom: #750000; }

.ffzmap__main__admin__validation__clipboard {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path class="fa-secondary" opacity=".4" fill="%23175d0f" d="M0 128L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64l-49.6 0c.2 .8 .3 1.6 .4 2.3C290.1 72.6 304 90.7 304 112l0 24c0 13.3-10.7 24-24 24l-88 0-88 0c-13.3 0-24-10.7-24-24l0-24c0-21.3 13.9-39.4 33.2-45.7c.1-.8 .3-1.6 .4-2.3L64 64C28.7 64 0 92.7 0 128z"/><path class="fa-primary" fill="%23175d0f" d="M192 0c-39.5 0-72.4 28.7-78.8 66.3C93.9 72.6 80 90.7 80 112l0 24c0 13.3 10.7 24 24 24l88 0 88 0c13.3 0 24-10.7 24-24l0-24c0-21.3-13.9-39.4-33.2-45.7C264.4 28.7 231.5 0 192 0zm0 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"/></svg>');
  background-repeat: no-repeat;
  background-size: 100%;
  width: 500px;
  height: 668px; }

.ffzmap__main__admin__validation__clipboard__inner {
  background-color: white;
  width: 470px;
  height: 380px;
  position: relative;
  top: 212px;
  left: 15px;
  border: 1px solid black;
  border-radius: 10px; }

.ffzmap__main__admin__validation__clipboard__inner__title {
  border-bottom: 1px solid gray;
  padding: 10px;
  background-color: #eaeaea;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  height: 43px; }

.ffzmap__main__admin__validation__clipboard__inner__items {
  height: 335px;
  overflow-y: scroll;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px; }

.ffzmap__main__admin__validation__clipboard__inner__items__item {
  padding-left: 10px;
  padding-top: 5px;
  padding-bottom: 5px; }

.ffzmap__main__admin__validation__clipboard__inner__items__item--even {
  background-color: #a4eea4; }

.ffzmap__main__admin__validation__clipboard__inner__items__item--odd {
  background-color: #dbf8db; }

.ffzmap__main__admin__validation__clipboard__inner__items__item:hover {
  cursor: pointer; }

.ffzmap__main__admin__validation__clipboard__inner__items__item__check-container__details {
  padding-left: 40px; }

.ffzmap__main__admin__validation__clipboard__inner__items__item__check-container__details__at {
  font-style: italic;
  font-size: smaller;
  color: #5a5a5a; }

.ffzmap__main__admin__validation__clipboard__inner__items__item__check-container__details__by {
  font-style: italic;
  font-size: smaller;
  color: #5a5a5a; }

.ffzmap__main__admin__validation-step__status {
  padding-left: 10px;
  padding-right: 10px;
  border-bottom: 1px solid #2a395b;
  background-color: #A2A2A2;
  height: 180px; }

.ffzmap__main__admin__validation-step__status__step-number {
  padding-top: 5px; }

.ffzmap__main__admin__validation-step__status__step-number span:last-child {
  padding-left: 5px;
  font-size: 24px; }

.ffzmap__main__admin__validation-step__status__short-text span:first-child {
  fill: #9c5305; }

.ffzmap__main__admin__validation-step__status__short-text span:last-child {
  color: #9c5305;
  font-style: italic;
  font-size: 18px;
  padding-left: 5px; }

.ffzmap__main__admin__validation-step__status__short-text {
  margin-top: 10px; }

.ffzmap__main__admin__validation-step__status__completion {
  margin-top: 10px; }

.ffzmap__main__admin__validation-step__status__completion span:first-child {
  display: inline-block;
  width: 40px;
  padding-left: 10px; }

.ffzmap__main__admin__validation-step__status__completion span:last-child {
  padding-left: 5px; }

.ffzmap__main__admin__validation-step__optionality {
  margin-top: 10px; }

.ffzmap__main__admin__validation-step__optionality span:first-child {
  display: inline-block;
  width: 40px;
  padding-left: 10px; }

.ffzmap__main__admin__validation-step__optionality span:last-child {
  padding-left: 5px; }

.ffzmap__main__admin__validation-step__main {
  padding: 10px; }

.ffzmap__main__admin__validation-step__main__instructions__heading {
  font-weight: bold;
  font-size: larger; }

.ffzmap__main__admin__validation-step__main__instructions__content {
  border: 1px solid darkgray;
  height: 150px;
  overflow-y: scroll;
  padding: 5px 10px;
  color: #414141;
  font-style: italic;
  border-radius: 5px;
  background-color: #e9f2ff;
  user-select: none; }

.ffzmap__main__admin__validation-step__main__justification {
  width: 100%;
  margin-top: 20px;
  border-top: 1px solid black;
  padding-top: 10px; }

.ffzmap__main__admin__validation-step__main__justification__heading {
  font-weight: bold;
  font-size: larger; }

.ffzmap__main__admin__validation-step__main__justification__label {
  font-weight: bold; }

.ffzmap__main__admin__validation-step__main__justification textarea {
  resize: none;
  width: 100%;
  height: 150px;
  border: 1px solid darkgray;
  background-color: #e9f2ff;
  border-radius: 5px; }

.ffzmap__main__admin__validation-step__main__communications {
  margin-top: 10px; }

.ffzmap__main__admin__validation-step__main__communications__heading {
  font-weight: bold; }

.ffzmap__main__admin__validation-step__main__communications__table-wrapper {
  padding: 0;
  border: 1px solid darkgray;
  border-radius: 5px;
  overflow-y: scroll;
  overflow-x: hidden;
  max-height: 250px; }

.ffzmap__main__admin__validation-step__main__communications__table-wrapper table {
  margin: 0 !important; }

.ffz__main__admin__back-button {
  padding-left: 20px;
  padding-top: 20px; }

.ffzmap__main__map-statement {
  background-color: #ffc862;
  border-bottom: 1px solid #876a33;
  padding: 5px; }

.ffzmap__main__filters {
  height: 36px;
  width: calc(100vw - 200px);
  position: absolute;
  top: 70px;
  display: flex;
  justify-content: right;
  padding-right: 10px; }

.ffzmap__main__filters__box {
  height: 100%;
  width: 240px;
  background-color: white;
  border-radius: 4px;
  display: flex;
  justify-content: space-between;
  padding-right: 10px;
  align-items: center; }

.ffzmap__main__filters__box__top {
  display: flex;
  flex-direction: row; }

.ffzmap__main__filters__box__top__icon {
  width: 20px;
  left: 7px;
  position: relative;
  margin-right: 14px; }

.ffzmap__main__filters__box__top__icon svg {
  fill: #757575; }

.ffzmap__main__filters__box__top__text {
  cursor: pointer;
  height: 24px;
  max-width: 196px;
  color: #989898; }

.ffzmap__main__filters__box__top__text--default {
  width: 196px; }

.ffzmap__main__filters__box__top__text--active {
  border-radius: 12px;
  padding-left: 5px;
  padding-right: 5px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

.ffzmap__main__filters__box__bottom {
  position: absolute;
  top: 36px;
  width: 240px;
  background-color: white;
  overflow-y: scroll;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border: 1px solid;
  display: none; }

.ffzmap__main__filters__box__bottom__item {
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center; }

.ffzmap__main__filters__box__bottom__item__inner {
  background-color: #0000004a;
  border: 1px solid #00000080;
  height: 90%;
  width: 95%;
  border-radius: 5px;
  display: flex;
  cursor: pointer; }

.ffzmap__main__filters__box__bottom__item__inner:hover {
  background-color: #00000024; }

.ffzmap__main__filters__box__bottom__item__inner__icon {
  margin-left: 3px;
  margin-right: 3px; }

.ffzmap__main__filters__box__bottom__item__inner__icon svg {
  width: 20px; }

.ffzmap__main__filters__box__bottom__item__inner__text {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  width: calc(100% - 28px); }

.map-popup-icon-geotags-span, .map-popup-icon-badges-span, .map-popup-icon-subdivisions-span, .map-popup-icon-public-description-span, .map-popup-icon-public-url-span, .map-popup-admin-span {
  margin-right: 5px; }

.map-popup-icon-geotags-span svg,
.map-popup-icon-badges-span svg,
.map-popup-admin-span svg {
  width: 18px;
  height: 25px; }

.map-popup-icon-public-description-span {
  font-style: italic; }

.map-popup-icon-subdivisions-ul {
  padding-left: 1rem; }

.ffzmap__main__team {
  display: flex;
  justify-content: center; }

.ffzmap__main__team__inner {
  display: flex;
  width: 80%;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-right: 20px; }

.ffzmap__main__team__inner__member {
  box-shadow: 10px 10px 5px 0 rgba(0, 0, 0, 0.1);
  width: 300px;
  background-color: #e5e8ee;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  margin-bottom: 20px; }

.ffzmap__main__team__inner__member div {
  padding: 5px; }

.ffzmap__main__team__inner__member div span {
  display: block; }

.ffzmap__main__team__inner__member div :first-child {
  font-weight: bold; }

.ffzmap__main__team__inner__member img {
  width: 300px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }

.ffzmap__main__partners {
  display: flex;
  justify-content: center; }

.ffzmap__main__partners__inner {
  display: flex;
  width: 80%;
  flex-wrap: wrap;
  padding-right: 20px; }

.ffzmap__main__partners__inner img {
  height: 150px;
  margin: 10px; }

.ffzmap__main__case-studies {
  display: flex;
  justify-content: center; }

.ffzmap__main__case-studies__inner {
  display: flex;
  width: 80%;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-right: 20px; }

.ffzmap__main__case-studies__inner__image {
  box-shadow: 10px 10px 5px 0 rgba(0, 0, 0, 0.1);
  width: 300px;
  background-color: #e5e8ee;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  margin-bottom: 20px; }

.ffzmap__main__case-studies__inner__image__text {
  padding: 5px;
  display: flex;
  justify-content: space-around;
  align-items: center; }

.ffzmap__main__case-studies__inner__image__text :first-child {
  font-weight: bold; }

.ffzmap__main__case-studies__inner__image img {
  width: 300px;
  height: 300px;
  object-fit: cover;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }

.ffzmap__main__case-studies__inner__image__description__inner {
  margin-left: 15px;
  margin-right: 15px;
  border-top: 1px solid #00000059;
  font-size: small;
  padding-top: 5px;
  padding-bottom: 5px; }

.ffzmap__main__case-studies__inner__image__description__inner svg {
  height: 20px; }

.ffzmap__main__statistics {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 40px;
  padding-bottom: 40px; }

.ffzmap__main__statistics__big-number {
  height: 200px;
  width: 200px;
  border-radius: 100px;
  background-color: #45d881;
  border: 5px solid #09632d;
  color: #d8459c;
  display: none;
  /* Set to flex once data has loaded */
  justify-content: center;
  align-items: center; }

.ffzmap__main__statistics__big-number__inner {
  text-align: center; }

.ffzmap__main__statistics__big-number__inner__number {
  font-size: 60px;
  font-weight: bold;
  user-select: none; }

.ffzmap__main__statistics__big-number__inner__text {
  font-weight: bold;
  user-select: none; }

.ffzmap__main__statistics__types-chart {
  margin-top: 40px;
  border-top: 1px solid;
  padding-top: 30px; }

.ffzmap__main__statistics__types-chart__legend {
  display: flex;
  justify-content: center; }

.ffzmap__main__statistics__types-chart__chart {
  width: 800px;
  max-width: 100vw;
  overflow-x: scroll; }

.ffzmap__main__faq h2 {
  font-size: 1.5rem; }

.ffzmap__main__faq p {
  margin-bottom: 30px; }

.ffzmap__main__contact {
  margin-left: 20px;
  margin-right: 20px; }

.ffzmap__main__contact__form {
  margin-top: 20px; }

.ffzmap__main__contact-thanks {
  display: none;
  flex-direction: column;
  height: calc(60vh);
  justify-content: space-evenly;
  align-items: center; }

.breadcrumbs {
  background-color: #bbb;
  border-bottom: 1px solid #0000004d;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  height: 70px; }

.breadcrumbs__left__title {
  border-bottom: 1px solid #848484;
  font-style: italic;
  font-size: large;
  color: #2d2d2d;
  padding-bottom: 7px;
  padding-top: 7px; }

.breadcrumbs__left__list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  align-items: end;
  font-weight: 200; }

.breadcrumbs__left__list li:not(:last-child)::after {
  display: inline-block;
  margin: 0 0.25rem;
  content: "→"; }

.breadcrumbs__right__name {
  color: #2d2d2d;
  padding-bottom: 7px;
  padding-top: 7px; }

.breadcrumbs__right__logout {
  font-weight: 200; }

.ffz-badge {
  padding: 5px;
  border-radius: 5px;
  font-weight: 200;
  white-space: pre;
  margin-right: 5px; }

.ffz-badge svg {
  width: 16px;
  padding-right: 4px; }

.ffz-badge--extraction-partially-free {
  border: 1px solid #332114;
  background: repeating-linear-gradient(135deg, #ca8857, #ca8857 5px, #b07347 5px, #b07347 10px); }

.ffz-badge--extraction-fully-free {
  border: 1px solid #332114;
  background-color: #ca8857; }

.ffz-badge--use-partially-free {
  border: 1px solid #1d3c00;
  background: repeating-linear-gradient(135deg, #60c106, #60c106 5px, #66ce04 5px, #66ce04 10px); }

.ffz-badge--use-fully-free {
  border: 1px solid #1d3c00;
  background-color: #66ce04; }

.ffz-geo-tag {
  border: 1px solid #646464;
  padding: 5px;
  border-radius: 5px;
  background-color: #bfbfbf;
  font-weight: 200; }

.ffz-geo-tag svg {
  width: 16px; }

.dropdown-btn {
  width: 370px;
  display: flex;
  justify-content: space-between;
  align-items: center; }

/* The container <div> - needed to position the dropdown content */
.dropdown {
  position: relative;
  display: inline-block; }

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f6f6f6;
  width: 370px;
  border: 1px solid #ddd;
  z-index: 1; }

/* Links inside the dropdown */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block; }

/* Change color of dropdown links on hover */
.dropdown-content a:hover {
  background-color: #f1f1f1; }

/* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */
.dropdown-show {
  display: block; }

.dropdown-content-list {
  max-height: 250px;
  overflow-y: scroll; }

.dropdown-content-container {
  padding: 5px; }

.dropdown-item-nothing {
  font-style: italic;
  color: #5a5a5a;
  padding-bottom: 10px;
  padding-left: 5px;
  user-select: none; }

.lds-ellipsis {
  /* change color here */
  color: #1c4c5b; }

.lds-ellipsis,
.lds-ellipsis div {
  box-sizing: border-box; }

.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px; }

.lds-ellipsis div {
  position: absolute;
  top: 33.33333px;
  width: 13.33333px;
  height: 13.33333px;
  border-radius: 50%;
  background: currentColor;
  animation-timing-function: cubic-bezier(0, 1, 1, 0); }

.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite; }

.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite; }

.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite; }

.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite; }

@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0); }
  100% {
    transform: scale(1); } }

@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(0); } }

@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0); }
  100% {
    transform: translate(24px, 0); } }
