body,
select,
input,
textarea {
  color: #fff f;
  font-family: "Open Sans", Avenir, serif;
}
.btn,
.btn:visited,
.btn:link {
  line-height: 1;
  padding: 0.65em;
  color: #fff;
  background-color: #db3833;
  box-shadow: 0px 0px 0px rgba(0,0,0,0.4) inset;
  font-weight: 600;
  border: 0;
  transition: box-shadow 0.5s ease, background-color 0.5s ease, color 0.5s ease;
}
.btn:hover,
.btn:visited:hover,
.btn:link:hover {
  background-color: #8a1c18;
  color: #fff;
  box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.3) inset;
}
.btn-primary,
.btn-primary:visited,
.btn-primary:link {
  background-color: #fff;
  box-shadow: 0px 0px 0px rgba(0,0,0,0.4) inset;
  color: #00134d;
  transition: box-shadow 0.5s ease, background-color 0.5s ease, color 0.5s ease;
}
.btn-secondary,
.btn-secondary:visited,
.btn-secondary:link {
  box-shadow: 0px 0px 0px rgba(0,0,0,0.4) inset;
  background-color: #db3833;
  color: #fff f;
}
.btn-secondary:hover,
.btn-secondary:visited:hover,
.btn-secondary:link:hover {
  color: #fff;
  background-color: #8a1c18;
}
a,
a:active,
a:visited {
  color: #db3833;
}
a:hover,
a:active:hover,
a:visited:hover {
  color: #00134d;
}
#powered-by a {
  background-image: url("images/crowdspot-logo.svg");
  background-position: 0px 4px;
}
.i280-welcome-logos {
  margin-bottom: 1em;
  text-align: right;
}
.i280-welcome-logos img {
  height: 250px;
  width: auto;
  margin-left: 0.5em;
  margin-right: 0.5em;
  float: right;
}
.i280-layers-icon {
  margin-bottom: -0.5em;
}
li {
  padding-bottom: 0.3em;
}
ul {
  margin-top: -0.75em;
}
.header-text-colour {
  color: #363a3c;
}
.info-popup {
  position: relative;
  padding-right: 0.15em;
  padding-top: 0.4em;
  margin-right: 0.1em;
  cursor: pointer;
  text-decoration: underline;
}
.info-popup:after {
  content: "i";
  background: #094e9b;
  color: #fff;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  position: absolute;
  top: -11px;
  right: -0.25em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}
.info-popup:hover .info-popup-popup {
  visibility: visible;
}
.info-popup-popup {
  visibility: hidden;
  font-size: 14px;
  min-width: 180px;
  position: absolute;
  bottom: calc(100% + 0.5em);
  left: 50%;
  transform: translateX(-50%);
  background: #808080;
  color: #fff;
  border-radius: 5px;
  padding: 0.75em;
  font-family: "Proxima Nova", Arial, Helvetica, serif;
  z-index: 100;
}
.info-popup-popup:after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  border-right: 10px solid #808080;
  border-bottom: 10px solid #808080;
  width: 5px;
  height: 5px;
  transform: translateX(-50%) rotate(45deg);
}
.info-popup-popup.info-popup-popup-down {
  bottom: auto;
  top: calc(100% + 0.5em);
}
.info-popup-popup.info-popup-popup-down:after {
  bottom: auto;
  top: -5px;
  transform: translateX(-50%) rotate(-45deg);
}
@media (max-width: 1000px) {
  #main {
    height: calc(100vh - 202px);
    display: flex;
    flex-direction: column;
  }
  #map-container {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }
  #map {
    flex-grow: 1;
  }
}
#powered-by {
  margin: 0;
  text-align: center;
}
#powered-by a {
  background: url("images/crowdspot-logo-horizontal-256x41.png") no-repeat center;
  background-size: contain;
  color: rgba(0,0,0,0);
}
#auth-nav-container,
.or-sign-in {
  display: none;
}
#site-header {
  border-top: #db3833 3px solid;
  border-bottom: #00134d 1px solid;
  background-color: #fff;
  background-repeat: no-repeat;
  box-shadow: none;
  display: flex;
  align-items: center;
  display: relative;
  z-index: 100;
  padding: 0.5em 1em;
}
@media only screen and (max-width: 959px) {
  #site-header {
    display: block;
  }
}
.has-pages #site-title {
  background: url("images/CrowdSpot_horizontal_rgb.svg") no-repeat center;
  background-size: contain;
  background-position: left center;
  margin: 0;
  width: 500px;
  max-width: 500px;
  text-indent: -133337px;
}
@media (min-width: 800px) {
  .has-pages #site-title {
    background: url("images/CrowdSpot_horizontal_rgb.svg") no-repeat center;
    background-size: contain;
    background-position: left center;
    max-width: 500px;
  }
}
@media only screen and (max-width: 959px) {
  .has-pages #site-title {
    top: 1em;
    margin-left: 3em;
    float: none;
    width: auto;
  }
}
#pages-nav-container,
#language-picker {
  float: none;
  height: auto;
  flex-shrink: 0;
}
#pages-nav-container {
  order: 3;
}
@media (min-width: 1000px) {
  #pages-nav-container {
    order: initial;
  }
}
.access {
  font-size: 1.1em;
  margin: 0;
  top: auto;
  float: none;
  width: auto;
}
@media (max-width: 800px) {
  .access.is-exposed {
    padding-top: 1em;
  }
}
@media (min-width: 1000px) {
  .access {
    margin: 0;
    display: flex;
  }
}
@media only screen and (min-width: 959px) {
  .access .menu {
    margin-left: 4em;
    display: flex;
    justify-content: center;
  }
}
.access .menu-item {
  margin: 0 0.5em;
  padding: 0;
  float: none;
}
.access .menu-item .btn {
  padding: 0.75em 1em;
}
.access .menu-item:hover ul {
  display: block;
  visibility: visible;
  opacity: 1;
  transform: translateY(0px);
  transition-delay: 0s, 0s, 0s;
  background: transparent;
  box-shadow: 0 5px 10px -5px rgba(85,85,85,0.5);
  border: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  margin: -3px -60px 0 0;
  padding: 3px 0 0 0;
  z-index: 2;
  overflow: hidden;
}
.access .menu-item:hover ul li {
  transform: translateY(0);
}
.access .menu-item .menu-item a:hover {
  background-color: #017f3d;
  box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.3) inset;
}
.access .menu-item .menu-item a:focus {
  outline: none;
}
@media (max-width: 60em) {
  .access {
    margin-left: 48px;
  }
  .access .menu-item {
    display: none;
    margin-bottom: 0.5em;
    margin-left: 0;
  }
  .access .menu-item.internal-menu-item {
    display: block;
  }
}
@media only screen and (max-width: 800px) and (min-width: 959px) {
  .access.is-exposed {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    bottom: auto;
    background: #000;
  }
}
#nav-btn {
  background: #000;
  color: #bbb;
  font-size: 2em;
  line-height: 0.7;
  text-decoration: none;
  text-align: center;
  text-shadow: none;
  float: left;
  width: 0.8em;
  padding: 5px 7px 10px;
  position: absolute;
  border-radius: 2.5px;
  left: 0.25em;
  top: 8px;
}
@media (min-width: 1000px) {
  #nav-btn {
    display: none;
  }
}
#nav-btn #language-picker .access li:last-child {
  display: block;
}
.list-toggle-nav {
  margin: 0;
  float: none;
  top: 0;
  display: flex;
}
#list-container {
  background: #eee;
}
.list-toggle-btn {
  display: flex;
}
.list-toggle-btn:hover {
  background-color: #f5b70b;
  color: #fff;
}
.spot-type-title {
  font-size: 1.1em;
  font-weight: bold;
  text-align: center;
  padding: 1em;
  color: #fff;
  background-color: #db3833;
  box-shadow: 0px 0px 5px rgba(85,85,85,0.5);
}
.legend {
  background-color: #fff;
  position: relative;
  z-index: 1;
  border-top: 0;
  padding-top: 1em;
  padding-bottom: 0.5em;
  padding-left: 7%;
  border-bottom: none;
  box-shadow: 0px 5px 5px -5px rgba(85,85,85,0.5);
  display: flex;
  flex-direction: column;
  cursor: not-allowed;
}
.legend li {
  line-height: 26px;
  margin-bottom: 0.5em;
  display: flex;
  align-items: center;
  pointer-events: none;
  user-select: none;
}
.legend .image-wrapper {
  background-image: url("images/legend-pin-background.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: #dfdfdf;
  box-shadow: 0px 5px 5px -5px rgba(85,85,85,0.5);
  min-height: 45px;
  min-width: 45px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5em;
}
.legend .image-wrapper img {
  max-height: 36px;
  vertical-align: middle;
}
.recent-points {
  border-bottom: none;
  background-color: #fff;
}
.recent-points a {
  color: #363a3c;
  text-decoration: none;
  float: left;
  border-top: none;
  border-bottom: none;
  padding: 0.8em 1.5em 0.6em;
  width: calc(100% + 10px);
  box-sizing: border-box;
  margin-left: -5px;
  margin-right: -5px;
  box-shadow: 0px 5px 5px -5px rgba(85,85,85,0.5);
  transition: background-color 0.5s ease, color 0.5s ease;
}
.recent-points a:hover {
  color: #fff;
  background-color: #4b4f54;
}
.recent-points .avatar {
  display: none;
}
.recent-points li strong {
  font-weight: normal;
}
#add-place-btn-container {
  padding: 0.5em;
}
#colophon {
  padding: 0.25em;
  box-shadow: inset 0 5px 10px -5px rgba(85,85,85,0.5);
}
#ticker {
  background: #eefafd;
  box-shadow: 0px 0 10px rgba(85,85,85,0.5);
  z-index: 50;
}
.place-form-visible #content.place-form {
  background: #fff;
}
@media (min-width: 60em) {
  .place-form-visible #content.place-form {
    box-shadow: none;
  }
  .place-form-visible #content.place-form > article {
    background: #fff;
    box-shadow: 0 0 20px rgba(0,0,0,0.5);
    position: relative;
    left: 0;
    padding-top: 22px;
    color: #000;
    padding: 1em 1em;
  }
}
@media (max-width: 60em) {
  .place-form-visible #content.place-form {
    box-shadow: none;
  }
  .place-form-visible #content.place-form > article {
    background: #fff;
    box-shadow: 0 0 0px #000;
    position: relative;
    left: 0;
    padding-top: 22px;
    color: #000;
    padding: 1em 1em;
  }
}
.place-form-visible a.close-btn {
  color: #000;
  background: #fff;
}
a.close-btn {
  z-index: 1;
  color: #000;
  right: 100%;
  margin-right: 0px;
  transition: 0.5s background ease, 0.5s color ease, 0.5s box-shadow ease;
  box-shadow: -6px 0 8px 0 rgba(0,0,0,0.2);
}
@media (max-width: 60em) {
  a.close-btn {
    width: 60px;
    box-shadow: 0px -4px 8px -4px rgba(0,0,0,0.2);
  }
}
@media (min-width: 60em) {
  a.close-btn {
    top: 12px;
  }
}
a.close-btn:hover {
  color: #eb008b;
  box-shadow: 0px 0 0px 0 rgba(0,0,0,0.2);
}
@media only screen and (min-width: 60em) {
  div.leaflet-top {
    top: 15px;
  }
  .leaflet-top.leaflet-right {
    top: 115px;
  }
}
.leaflet-touch a.leaflet-control-layers-toggle,
.leaflet-retina a.leaflet-control-layers-toggle {
  background-image: none;
  background-size: inherit;
  width: 33px;
  height: 33px;
  text-decoration: none;
}
.leaflet-touch a.leaflet-control-layers-toggle:before,
.leaflet-retina a.leaflet-control-layers-toggle:before {
  content: url("images/layer_image.svg");
  display: block;
  color: #243c4b;
  font-family: "Arial";
  font-weight: normal;
  font-size: 1.5em;
  padding: 4px 0px 0 4px;
}
div.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #585a59;
  font-family: "Arial";
  background: #fff;
  font-size: 1.1em;
}
.leaflet-control-layers-list:before {
  content: "Layers";
  margin-bottom: 0.15em;
  display: block;
  font-weight: bold;
  font: "Arial";
  font-size: 1.5em;
  padding-left: 1px;
  color: #222;
}
#centerpoint.newpin .marker {
  display: block;
  width: 55px;
  height: 77px;
  background: transparent url("images/markers/newspot.svg") 0 0 no-repeat scroll;
  background-size: cover;
  position: relative;
  top: -33px;
  left: -15px;
  transition: top 0.4s ease;
}
#centerpoint.newpin .x {
  background: transparent url("images/x.svg") 0 0 no-repeat scroll;
  width: 20px;
  height: 15px;
}
#centerpoint.newpin .shadow {
  background: transparent url("images/master-pin-shadow.svg") -29px 2px no-repeat scroll;
  width: 100px;
}
#centerpoint.newpin.dragging .shadow {
  background: transparent url("images/master-pin-shadow.svg") -20px -2px no-repeat scroll;
}
#centerpoint.newpin.dragging .marker {
  top: -40px;
}
#centerpoint.newpin.dragging .marker .newpin {
  z-index: 500 !important;
}
@media (min-width: 60em) {
  #add-place-btn-container {
    bottom: 1.5em;
  }
}
.btn-primary,
.btn-primary:visited,
.btn-primary:link {
  background-color: #db3833;
  color: #fff;
}
.btn-primary:hover,
.btn-primary:visited:hover,
.btn-primary:link:hover {
  background-color: #8a1c18;
  color: #fff;
}
.newpin {
  z-index: 500 !important;
}
@media only screen and (min-width: 60em) {
  #add-place-btn-container {
    bottom: 1.5em;
    z-index: 500 !important;
  }
}
path.leaflet-interactive:hover {
  stroke: #4a1356;
  stroke-width: 10;
}
.marker-cluster-small {
  background-color: rgba(0,156,86,0.6);
}
.marker-cluster-small div {
  background-color: rgba(0,156,86,0.6);
}
.marker-cluster-medium {
  background-color: rgba(0,156,86,0.6);
}
.marker-cluster-medium div {
  background-color: rgba(0,156,86,0.6);
}
.marker-cluster-large {
  background-color: rgba(0,156,86,0.6);
}
.marker-cluster-large div {
  background-color: rgba(0,156,86,0.6);
}
.leaflet-oldie .marker-cluster-small {
  background-color: #b5e28c;
}
.leaflet-oldie .marker-cluster-small div {
  background-color: #6ecc39;
}
.leaflet-oldie .marker-cluster-medium {
  background-color: #f1d357;
}
.leaflet-oldie .marker-cluster-medium div {
  background-color: #f0c20c;
}
.leaflet-oldie .marker-cluster-large {
  background-color: #fd9c73;
}
.leaflet-oldie .marker-cluster-large div {
  background-color: #f18017;
}
.marker-cluster {
  background-clip: padding-box;
  border-radius: 20px;
}
.marker-cluster div {
  width: 30px;
  height: 30px;
  margin-left: 5px;
  margin-top: 5px;
  text-align: center;
  border-radius: 15px;
  font: 16px "Open sans", Arial, Helvetica, sans-serif;
  color: #fff;
}
.marker-cluster span {
  line-height: 30px;
}
.place-value-description:before {
  content: "Description: ";
}
.place-value-habitat:before {
  content: "Habitat: ";
}
.place-value-doing:before {
  content: "Behaviour: ";
}
.large-screen-columns {
  margin-bottom: 1em;
  padding-bottom: 1em;
  box-shadow: 0px 5px 5px -5px rgba(85,85,85,0.5);
}
@media (min-width: 800px) {
  .large-screen-columns {
    display: flex;
    flex-wrap: wrap;
  }
}
.large-screen-columns a {
  display: block;
  margin-bottom: 0.5em;
}
@media (min-width: 800px) {
  .large-screen-columns a {
    width: 50%;
  }
}
.response-value-private-submitter_email_comment {
  display: none;
}
.survey-count {
  display: none;
}
.place-items .place-item {
  display: none;
}
.place-items .place-item.place-item-description,
.place-items .place-item.place-item-doing,
.place-items .place-item.place-item-habitat,
.place-items .place-item.place-attachment-my_image {
  display: block;
}
.textarea-container {
  display: block;
  position: relative;
}
.remaining-characters {
  font-size: 0.75em;
  font-weight: 800;
  line-height: 1.5;
  margin-bottom: 4px;
  padding: 4px 8px 2px 8px;
  border-radius: 4px;
  text-align: right;
  margin-top: 0.4rem;
}
.remaining-characters.warning {
  background-color: Crimson;
  color: #fff;
}
.drag-marker-instructions,
.drag-marker-warning {
  background-color: #025fab;
  color: #fff;
  text-shadow: none;
  padding-top: 3em;
  padding-bottom: 3em;
  margin-bottom: 4em;
  font-size: 1.3em;
  font-weight: normal;
  position: absolute;
  top: 1em;
  left: 1em;
  right: 1em;
}
.show-form-warnings {
  animation: show-form-warnings 0.3s ease-in-out forwards;
}
.hide-form-warnings {
  animation: hide-form-warnings 0.3s ease-in-out forwards;
}
#content.place-form h4,
#content.place-form #place-form {
  opacity: 0;
  max-width: 100%;
}
.show-form-item {
  opacity: 0;
  animation: show-form-items 0.3s 0.4s ease-in-out forwards;
}
label {
  margin: 0;
}
label small {
  text-transform: none;
  font-size: 1em;
  display: none;
}
.place-form h1,
.place-detail h1 {
  font-size: 1.5em;
  text-align: center;
  color: #000;
  margin-bottom: 1.5em;
}
.place-form .file-field,
.place-detail .file-field {
  text-align: center;
}
.place-form .select-field select,
.place-detail .select-field select {
  padding: 1em;
  text-align: center;
  background: #e4f8ff;
  border: none !important;
  box-shadow: 0 0 10px -5px rgba(255,191,78,0.8) inset;
  background-image: url("images/triangledown.svg");
  background-repeat: no-repeat;
  background-position: 95%;
  background-size: 25px;
  appearance: none;
}
.place-form .select-field select:focus,
.place-detail .select-field select:focus {
  outline: none;
}
.place-form label.field-label,
.place-detail label.field-label {
  display: block;
  text-align: center;
  margin-bottom: 1em;
  color: #000;
}
.place-form span.label-text,
.place-detail span.label-text {
  color: #000;
  display: inline;
  padding: 0;
  border: none;
}
.place-form span.label-text:hover,
.place-detail span.label-text:hover {
  background: none;
}
.place-form :checked + .radio-label-text,
.place-detail :checked + .radio-label-text,
.place-form .radio-label-text.checked,
.place-detail .radio-label-text.checked,
.place-form :checked + .checkbox-label-text,
.place-detail :checked + .checkbox-label-text,
.place-form .checkbox-label-text.checked,
.place-detail .checkbox-label-text.checked {
  background: none !important;
  color: #000;
}
.place-form :checked + .radio-label-text:hover,
.place-detail :checked + .radio-label-text:hover,
.place-form .radio-label-text.checked:hover,
.place-detail .radio-label-text.checked:hover,
.place-form :checked + .checkbox-label-text:hover,
.place-detail :checked + .checkbox-label-text:hover,
.place-form .checkbox-label-text.checked:hover,
.place-detail .checkbox-label-text.checked:hover {
  background: none;
}
.place-form .field:not(.email-field),
.place-detail .field:not(.email-field) {
  position: relative;
  padding-bottom: 4em;
  border-bottom: 1px solid #2b6e80;
  margin-bottom: 4em;
}
.place-form .field:not(.email-field):after,
.place-detail .field:not(.email-field):after {
  content: "";
  width: 25px;
  height: 25px;
  background: #fff;
  border-bottom: 1px solid #2b6e80;
  border-right: 1px solid #2b6e80;
  position: absolute;
  left: 50%;
  bottom: -14px;
  transform: translateX(-50%) rotate(45deg);
}
.place-form .field.place-walk_willingness-field,
.place-detail .field.place-walk_willingness-field,
.place-form .field.place-location_walking_issue-field,
.place-detail .field.place-location_walking_issue-field,
.place-form .field.place-location_cycling_issue-field,
.place-detail .field.place-location_cycling_issue-field,
.place-form .field.place-location_pt_issue-field,
.place-detail .field.place-location_pt_issue-field,
.place-form .field.place-location_car_issue-field,
.place-detail .field.place-location_car_issue-field,
.place-form .field.place-location_truck_issue-field,
.place-detail .field.place-location_truck_issue-field,
.place-form .field.place-location_amenity_issue-field,
.place-detail .field.place-location_amenity_issue-field,
.place-form .field.place-language-field,
.place-detail .field.place-language-field,
.place-form .field.place-location_gender-field,
.place-detail .field.place-location_gender-field,
.place-form .field.place-demographics_heading-field,
.place-detail .field.place-demographics_heading-field {
  border-bottom: none !important;
  padding-bottom: 2em !important;
  margin-bottom: 0 !important;
}
.place-form .field.place-walk_willingness-field:after,
.place-detail .field.place-walk_willingness-field:after,
.place-form .field.place-location_walking_issue-field:after,
.place-detail .field.place-location_walking_issue-field:after,
.place-form .field.place-location_cycling_issue-field:after,
.place-detail .field.place-location_cycling_issue-field:after,
.place-form .field.place-location_pt_issue-field:after,
.place-detail .field.place-location_pt_issue-field:after,
.place-form .field.place-location_car_issue-field:after,
.place-detail .field.place-location_car_issue-field:after,
.place-form .field.place-location_truck_issue-field:after,
.place-detail .field.place-location_truck_issue-field:after,
.place-form .field.place-location_amenity_issue-field:after,
.place-detail .field.place-location_amenity_issue-field:after,
.place-form .field.place-language-field:after,
.place-detail .field.place-language-field:after,
.place-form .field.place-location_gender-field:after,
.place-detail .field.place-location_gender-field:after,
.place-form .field.place-demographics_heading-field:after,
.place-detail .field.place-demographics_heading-field:after {
  box-shadow: none;
  display: none;
}
.place-form .field.place-demographics_heading-field,
.place-detail .field.place-demographics_heading-field {
  padding-bottom: 0 !important;
}
.checkbox label {
  color: #000;
}
.place-form .text-field input,
.place-form .email-field input,
.place-form .text-field textarea,
.place-form .email-field textarea {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.place-form .text-field #place-age,
.place-form .email-field #place-age,
.place-form .text-field #place-gender,
.place-form .email-field #place-gender {
  max-width: 160px;
}
.place-form input[type=text],
.place-detail input[type=text],
.place-form input[type=email],
.place-detail input[type=email],
.place-form textarea,
.place-detail textarea {
  border: none;
  padding: 1em;
  border-radius: 3px;
  box-shadow: 0 0 10px -5px rgba(0,165,81,0.6) inset;
  background-color: #fcfffd;
  text-align: center;
}
#fields-location_type {
  margin-bottom: 3em;
}
.place-form .place-help-field,
.place-form .place-help_who-field,
.place-form .place-private-submitter_email_address-field {
  display: none;
}
.place-form .doing-looked_injured .place-help-field {
  display: block !important;
}
.place-form .help-yes_.doing-looked_injured .place-help_who-field {
  display: block !important;
}
.place-form .updates-yes_updates .place-private-submitter_email_address-field {
  display: block !important;
}
.place-form.walking_issue #fields-privacy,
.place-form.cycling_issue #fields-privacy {
  display: flex;
  flex-direction: row-reverse;
}
.place-form.walking_issue #fields-privacy label,
.place-form.cycling_issue #fields-privacy label {
  font-size: 12px;
}
.place-form.walking_issue #fields-privacy input,
.place-form.cycling_issue #fields-privacy input {
  margin-right: 1em;
  width: 20px;
  height: 20px;
  display: block;
  flex-shrink: 0;
}
.place-item-age,
.place-item-gender {
  display: none;
}
.required-field-label {
  color: #ef008c;
  font-size: 2em;
  vertical-align: middle;
}
.section-heading {
  display: none;
}
.place-demographics_heading-field {
  margin-top: 2em;
  margin-bottom: 1em;
  text-align: center;
  font-size: 1.5em;
}
.place-statement_heading-field {
  margin-top: 2em;
  margin-bottom: 1em;
  text-align: center;
  font-size: 1.15em;
}
.place-rank_heading-field {
  margin-top: 3em;
  margin-bottom: 3em;
  text-align: center;
  font-size: 1.25em;
}
[type="range"] {
  -webkit-appearance: none;
  width: 100%;
  height: 10px;
  border-radius: 5px;
  outline: none;
  background: #ec008c;
  margin-bottom: 1em;
}
[type="range"]::-webkit-slider-thumb {
  appearance: none;
  width: 40px;
  height: 40px;
  background: #fff200;
  border: none;
  border-radius: 50%;
  cursor: pointer;
}
[type="range"]:focus {
  outline: none;
}
.place-form input.range-value {
  background: none;
  box-shadow: none;
  color: #000;
}
.place-title {
  margin-top: 1em;
  margin-bottom: 1em;
  text-align: center;
}
#place-form .or-sign-in {
  display: none;
}
.place-name-field {
  margin-top: 16px;
}
.submit-btn {
  width: 100%;
  font-size: 1.25em;
}
.point-submitter .avatar,
.response-submitter .avatar {
  display: none;
}
.place-submission-confirmation {
  text-align: left;
}
.place-submission-details {
  text-align: center;
}
.survey-header {
  color: #000;
  text-align: center;
}
.copy-link-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: none;
  appearance: none;
  padding: 0.5em;
  margin-bottom: 1em;
}
.copy-link-button svg {
  margin-left: 1em;
  width: 24px;
}
@-moz-keyframes show-form-warnings {
  0% {
    display: block;
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes show-form-warnings {
  0% {
    display: block;
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-o-keyframes show-form-warnings {
  0% {
    display: block;
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes show-form-warnings {
  0% {
    display: block;
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-moz-keyframes hide-form-warnings {
  99% {
    transform: translateY(-100px);
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
@-webkit-keyframes hide-form-warnings {
  99% {
    transform: translateY(-100px);
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
@-o-keyframes hide-form-warnings {
  99% {
    transform: translateY(-100px);
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
@keyframes hide-form-warnings {
  99% {
    transform: translateY(-100px);
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
@-moz-keyframes show-form-items {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes show-form-items {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-o-keyframes show-form-items {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes show-form-items {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-moz-keyframes hide-form-items {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes hide-form-items {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes hide-form-items {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes hide-form-items {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes showFormElements {
  0% {
    opacity: 0;
    display: block;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
@-webkit-keyframes showFormElements {
  0% {
    opacity: 0;
    display: block;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
@-o-keyframes showFormElements {
  0% {
    opacity: 0;
    display: block;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
@keyframes showFormElements {
  0% {
    opacity: 0;
    display: block;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
input:focus,
textarea:focus {
  outline: none;
}
.hidden-field {
  visibility: hidden;
  height: 0;
  position: absolute !important;
}
.promotion {
  float: flex;
  flex-direction: column;
  float: none;
  min-width: 150px;
  margin-left: 0;
}
.place-list .promotion {
  float: right;
}
.support-oppose {
  display: flex;
}
.support-oppose form {
  padding: 0;
}
.support {
  margin-right: 15px;
  width: 50%;
}
.oppose {
  width: 50%;
}
.user-support {
  background-image: none;
  cursor: pointer;
  width: 100%;
}
.user-support .support-count {
  margin-right: 0.5em;
}
.user-support label {
  color: #fff;
  background-image: none;
  padding: 1em;
  margin-right: 0;
  text-align: center;
  background-color: #7d9a42;
  font-weight: 600;
  transition: box-shadow 0.5s ease, color 0.5s ease, background-color 0.5s ease, opacity 0.5s ease;
  cursor: pointer;
  border-radius: 2.5px;
  box-shadow: 0px 0px 0px rgba(0,0,0,0.4) inset;
  display: flex;
  justify-content: center;
}
.user-support:hover label {
  background-color: #005907;
  box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.3) inset;
}
.user-support:hover label:after {
  opacity: 1;
}
.user-support input[type=checkbox]:checked ~ label {
  background-color: #00940c;
  background-image: none;
  color: #fff;
}
.user-support input[type=checkbox]:checked ~ label:hover {
  background-color: #c0c0c0;
}
.oppose label {
  background-color: #f66;
}
.oppose label:after {
  transform: rotate(180deg);
}
.oppose:hover label {
  background-color: #4d004d;
  box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.3) inset;
}
.oppose:hover label:after {
  opacity: 1;
}
.oppose input[type=checkbox]:checked ~ label {
  background-color: #c30044;
}
.social {
  border-radius: 2.5px;
  overflow: hidden;
}
.sharing {
  display: flex;
  align-items: center;
}
.share-link {
  float: none;
  margin-left: 0;
  width: 50%;
}
.share-link a {
  width: 100%;
  transition: box-shadow 0.5s ease, background 0.5s ease;
}
.share-link a:hover {
  box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.3) inset;
}
.share-facebook a {
  background: #385184 url("images/facebook-share.svg") center center no-repeat;
}
.share-facebook a:hover {
  background-color: #4b6db1;
}
.share-twitter a {
  background: #1da1f2 url("images/x-share.svg") center center no-repeat;
  background-size: 20px;
}
.share-twitter a:hover {
  background-color: #4ab4f5;
}
.checkbox-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.checkbox-group> label {
  display: block;
}
.checkbox-group input[type=checkbox] {
  display: none;
}
.checkbox-group input[type=checkbox]:checked +span:after {
  opacity: 1;
  transform: scale(1);
}
.checkbox-group input[type=checkbox] +span:after {
  content: "";
  position: absolute;
  top: 0;
  right: 50%;
  margin-right: -45px;
  transform: scale(0);
  opacity: 1;
  width: 20px;
  height: 20px;
  background: no-repeat center center;
  background-size: cover;
  background-image: url("images/checkbox-tick.svg");
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}
.checkbox-group label {
  text-align: center;
  width: 100%;
  margin: 0.5em 0;
  position: relative;
}
@media (min-width: 400px) {
  .checkbox-group label {
    width: 50%;
  }
}
@media (min-width: 300px) {
  .checkbox-group label {
    width: 33.333333333333336%;
  }
}
@media (min-width: 600px) {
  .checkbox-group label {
    margin: 0.5em 2.5%;
    width: 25%;
  }
}
@media (min-width: 1000px) {
  .checkbox-group label {
    margin: 0.5em 2.5%;
    width: 25%;
  }
}
.checkbox-group label:before {
  content: "";
  display: block;
  min-width: 60px;
  min-height: 60px;
  background-size: 50px 50px;
  background-repeat: no-repeat;
  background-position: center center;
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  cursor: pointer;
  border-radius: 50%;
  background-image: url("images/emojis/icon-default.svg");
}
.checkbox-group label:after {
  content: "";
  position: absolute;
  top: 0;
  right: 50%;
  margin-right: -45px;
  transform: scale(0);
  opacity: 0;
  width: 20px;
  height: 20px;
  background: no-repeat center center;
  background-size: cover;
  background-image: url("images/checkbox-tick.svg");
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}
.checkbox-group label:hover:before {
  transform: scale(1.2);
}
.checkbox-group label.value-Walking:before {
  background-image: url("images/emojis/icon-walking_mode.svg");
}
.checkbox-group label.value-Cycling:before {
  background-image: url("images/emojis/icon-cycling_mode.svg");
}
.checkbox-group label.value-Bus:before {
  background-image: url("images/emojis/icon-bus_mode.svg");
}
.checkbox-group label.value-Car_driver:before {
  background-image: url("images/emojis/icon-car_driver_mode.svg");
}
.checkbox-group label.value-Car_passenger_taxi_rideshare:before {
  background-image: url("images/emojis/icon-car_passenger_mode.svg");
}
.checkbox-group label.value-Other_travel_movements:before {
  background-image: url("images/emojis/icon-other_mode.svg");
}
.checkbox-group label.value-Live_BOQ:before {
  background-image: url("images/emojis/icon-live.svg");
}
.checkbox-group label.value-Live_CoGG:before {
  background-image: url("images/emojis/icon-live_1.svg");
}
.checkbox-group label.value-Visitor_Ratepayer:before {
  background-image: url("images/emojis/icon-visit.svg");
}
.checkbox-group label.value-Visitor_Non_Ratepayer:before {
  background-image: url("images/emojis/icon-visit_1.svg");
}
.checkbox-group label.value-Work:before {
  background-image: url("images/emojis/icon-work.svg");
}
.checkbox-group label.value-Study:before {
  background-image: url("images/emojis/icon-study.svg");
}
.checkbox-group label.value-Visit:before {
  background-image: url("images/emojis/icon-visit.svg");
}
.checkbox-group label.value-Own_a_business:before {
  background-image: url("images/emojis/icon-own_a_business.svg");
}
@media (min-width: 400px) {
  .checkbox-group.multi-checkbox-location_safe_category label.multi-checkbox {
    width: 30%;
  }
}
@media (min-width: 300px) {
  .checkbox-group.multi-checkbox-location_safe_category label.multi-checkbox {
    width: 33%;
  }
}
@media (min-width: 600px) {
  .checkbox-group.multi-checkbox-location_safe_category label.multi-checkbox {
    margin: 0.5em 2.5%;
    width: 40%;
  }
}
@media (min-width: 1000px) {
  .checkbox-group.multi-checkbox-location_safe_category label.multi-checkbox {
    margin: 0.5em 2.5%;
    width: 20%;
  }
}
@media (min-width: 400px) {
  .checkbox-group.multi-checkbox-connection label.multi-checkbox {
    width: 30%;
  }
}
@media (min-width: 300px) {
  .checkbox-group.multi-checkbox-connection label.multi-checkbox {
    width: 30%;
  }
}
@media (min-width: 600px) {
  .checkbox-group.multi-checkbox-connection label.multi-checkbox {
    margin: 0.5em 2.5%;
    width: 40%;
  }
}
@media (min-width: 1000px) {
  .checkbox-group.multi-checkbox-connection label.multi-checkbox {
    margin: 0.5em 2.5%;
    width: 20%;
  }
}
#fields-happy_feel {
  display: none;
  opacity: 0;
  position: absolute;
  width: 100%;
  transform: translateY(-50px);
  animation: hideHappyEmojis 0.5s ease-in-out forwards;
}
#fields-sad_feel {
  display: none;
  opacity: 0;
  position: absolute;
  width: 100%;
  transform: translateY(-50px);
  animation: hideSadEmojis 0.5s ease-in-out forwards;
}
.place-form #fields-location_type {
  position: relative;
}
.place-form #fields-location_type:after {
  content: "Select to continue";
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: -8em;
  transform: translateX(-50%);
  transition: opacity 0.2s ease-in-out;
}
.place-form.good_place:after,
.place-form.bad_place:after,
.place-form.good_story:after,
.place-form.bad_story:after,
.place-form #fields-location_type:after {
  opacity: 0;
}
.place-form.good #fields-happy_feel {
  display: block;
  animation: showHappyEmojis 0.5s ease-in-out forwards;
}
.place-form.good #fields-sad_feel {
  animation: hideSadEmojis 0.5s ease-in-out forwards;
}
.place-form.bad #fields-sad_feel {
  display: block;
  animation: showSadEmojis 0.5s ease-in-out forwards;
}
.place-form.bad #fields-happy_feel {
  animation: hideHappyEmojis 0.5s ease-in-out forwards;
}
#fields-time {
  margin-top: 26em;
}
@media (min-width: 600px) {
  #fields-time {
    margin-top: 21em;
  }
}
@-moz-keyframes showHappyEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes showHappyEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes showHappyEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes showHappyEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-moz-keyframes hideHappyEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@-webkit-keyframes hideHappyEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@-o-keyframes hideHappyEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@keyframes hideHappyEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@-moz-keyframes showSadEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes showSadEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes showSadEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes showSadEmojis {
  0% {
    display: block;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-moz-keyframes hideSadEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@-webkit-keyframes hideSadEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@-o-keyframes hideSadEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
@keyframes hideSadEmojis {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  99% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    display: none;
  }
}
.radio-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.radio-group> label {
  display: block;
}
.radio-group input[type=radio] {
  opacity: 0;
  width: 1px;
  height: 1px;
}
.radio-group input[type=radio]:checked +span:after {
  opacity: 1;
  transform: scale(1);
}
.radio-group input[type=radio] +span:after {
  content: "";
  position: absolute;
  top: 0;
  right: 50%;
  margin-right: -45px;
  transform: scale(0);
  opacity: 1;
  width: 20px;
  height: 20px;
  background: no-repeat center center;
  background-size: cover;
  background-image: url("images/checkbox-tick.svg");
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}
.radio-group label {
  text-align: center;
  width: 100%;
  margin: 0.5em 0;
  position: relative;
}
@media (min-width: 400px) {
  .radio-group label {
    width: 49%;
  }
}
@media (min-width: 300px) {
  .radio-group label {
    width: 32.333333333333336%;
  }
}
@media (min-width: 600px) {
  .radio-group label {
    margin: 0.5em 2.5%;
    width: 25%;
  }
}
@media (min-width: 1000px) {
  .radio-group label {
    margin: 0.5em 2.5%;
    width: 25%;
  }
}
.radio-group label:before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background-size: 80% 80%;
  background-repeat: no-repeat;
  background-position: center center;
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  cursor: pointer;
  border-radius: 50%;
  margin: 0 auto 0.5em;
  background-image: url("images/emojis/icon-default.svg");
}
.radio-group label:hover:before {
  transform: scale(1.2);
}
.radio-group label.value-tree:before {
  background-image: url("images/emojis/icon-tree.svg");
}
.radio-group label.value-bush_shrub:before {
  background-image: url("images/emojis/icon-bush_shrub.svg");
}
.radio-group label.value-grassland:before {
  background-image: url("images/emojis/icon-grassland.svg");
}
.radio-group label.value-home_garden:before {
  background-image: url("images/emojis/icon-home_garden.svg");
}
.radio-group label.value-no_habitat:before {
  background-image: url("images/emojis/icon-no_habitat.svg");
}
.radio-group label.value-eating:before {
  background-image: url("images/emojis/icon-eating.svg");
}
.radio-group label.value-sleeping:before {
  background-image: url("images/emojis/icon-sleeping.svg");
}
.radio-group label.value-not_moving:before {
  background-image: url("images/emojis/icon-not_moving.svg");
}
.radio-group label.value-looked_injured:before {
  background-image: url("images/emojis/icon-looked_injured.svg");
}
.radio-group label.value-moving:before {
  background-image: url("images/emojis/icon-moving.svg");
}
.radio-group label.value-dead:before {
  background-image: url("images/emojis/icon-dead.svg");
}
.radio-group label.value-yes_:before {
  background-image: url("images/emojis/icon-yes.svg");
}
.radio-group label.value-no_:before {
  background-image: url("images/emojis/icon-no.svg");
}
.radio-group label.value-yes_updates:before {
  background-image: url("images/emojis/icon-yes.svg");
}
.radio-group label.value-no_updates:before {
  background-image: url("images/emojis/icon-no.svg");
}
@media (min-width: 400px) {
  .radio-group.multi-radio-doing label.multi-radio {
    width: 30%;
  }
}
@media (min-width: 300px) {
  .radio-group.multi-radio-doing label.multi-radio {
    width: 30%;
  }
}
@media (min-width: 600px) {
  .radio-group.multi-radio-doing label.multi-radio {
    margin: 0.5em 2.5%;
    width: 40%;
  }
}
@media (min-width: 1000px) {
  .radio-group.multi-radio-doing label.multi-radio {
    margin: 0.5em 2.5%;
    width: 20%;
  }
}
.consent-form {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0,0,0,0.5);
  z-index: 2000;
  display: flex;
  justify-content: center;
}
@media (min-width: 1000px) {
  .consent-form {
    align-items: center;
  }
}
.consent-form-container {
  background: #fff;
  max-width: 500px;
  padding: 2em;
  border-radius: 0.2rem;
  box-shadow: 0 0 30px 0 rgba(0,0,0,0.25);
  overflow: auto;
}
.divider {
  height: 1px;
  background: rgba(1,1,1,0.1);
  margin: 2em 0;
}

/*# sourceMappingURL=custom.css.map */
