@font-face {
  font-family: GothamNormal;
  src: url("./assets/fonts/Gotham Regular.otf") format("opentype");
}

@font-face {
  font-family: Gotham;
  font-weight: bold;
  src: url("./assets/fonts/GothamBold Regular.otf") format("opentype");
}
@font-face {
  font-family: GothamBook;
  src: url("./assets/fonts/Gotham Book.otf") format("opentype");
}
html, body {
  font-family: 'Gotham';
}
.ncss-color {
  color: #1F2522;
  background-color: #1F2522;
}
.cmm-color {
  color: #B91F27;
  background-color: #B91F27;
}
.cert-color {
  color: #FED141;
  background-color: #FED141;
}
.bc-color {
  color: #273C4E;
  background-color: #273C4E;
}
.heading {
  padding: 0 20% 50px 20%;
  margin-top: 35px;
}
.heading .heading-title {
  font-size: 32px;
  line-height: 40px;
  color: #1F2522;
  margin: 70px 0 40px 0;
}
.text-small {
  font-family: 'GothamBook';
}
/*
.heading .intro-title {
  color: #B8222F;
  font-size: 18px;
  line-height: 36px;
  border-bottom: 2px solid #B8222F;
}
*/
.heading .intro-text {
  font-size: 14px;
  line-height: 25px;
  margin-top: 20px;
  margin-bottom: 20px;
  color: #1F2522;
  font-family: 'GothamBook';
  white-space: pre-line;
  width: 80%;
}
.heading .intro-text a {
  color: #B91F27;
}
.map-container {
  display: table;
  margin: 0 auto;
}
.map-section {
  width: 90%;
  margin-left: 5%;
  margin-right: 5%;
  max-height: 1000px;
}
.map-section.zoomed {
  margin-left: 20%;
  margin-right: 20%;
  width: 60%;
  overflow: hidden;
}
.map-section svg {
  width: 100%;
}
hr {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.country-selected {
  margin: 20px 15%;
  padding: 0 5%;
  /*display: none;*/
}
.country-selected.has-selected {
  display: block;
}
.categories {

}
.categories .category > .exterior > .name {
  border-bottom: 2px solid #1F2522;
  width: 100%;
  height: 65px;
  line-height: 65px;
  font-weight: bold;
  font-size: 18px;
}
.categories .category > .exterior {
  position: relative;
}
.categories .category > .exterior svg {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 15px;
}
.category .open-toggle-icon {
  transform: scaleY(-1);
}
.category.open .open-toggle-icon {
  transform: unset;
}
.country-selected > .name {
  font-size: 24px;
  margin-bottom: 50px;
}
.country-selected .description {
  margin: 25px 0;
  font-size: 14px;
  font-family: 'GothamBook';
  line-height: 25px;
  white-space: pre-line;
}
.country-select {
  position: relative;
  z-index: 2;
  display: table;
  margin-left: 20%;
  margin-bottom: -75px;
}
.country-select .select-country {
  margin-left: 50px;
  min-width: 200px;
}


.admin-page {
  padding: 40px;
}
.admin-page .website-content {
  margin-top: 30px;
}
.admin-page .website-content > input, .admin-page .website-content > textarea, .admin-page .website-content .textarea {
  display: block;
  margin: 10px 0;
  width: 700px;
}
.admin-page .website-content textarea, .admin-page .website-content .textarea {
  min-height: 100px;
}
.admin-page .website-content .button {
  display: table;
}
.admin-page .add-country, .admin-page .select-country {
  margin: 30px 0;
} 
.admin-page .add-country {
  display: flex;
  align-items: center;
}
.admin-page .add-country input {
  padding: 5px 10px;
  margin: 0 10px;
}
.admin-page .add-country .add-country-button {
  cursor: pointer;
}
.admin-page .countries-title {
  margin: 30px 0;
}
.admin-page .update-country {
  display: none;
}
.admin-page .update-country.selected {
  display: block;
}
.admin-page .selected-country-information {
  align-items: center;
  padding: 10px 0;
}
.admin-page .selected-country-information > * {
  margin: 10px 0;
}
.admin-page .active-checkbox-container {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
.admin-page .active-checkbox-container input {
  margin: 0 10px;
}
.admin-page .selected-country-information .country-description {
  display: block;
  min-height: 100px;
  min-width: 700px;
}
.admin-page .selected-country-information .button {
  display: table;
}
.admin-page .category {
  padding-bottom: 40px;
  border-bottom: 2px solid black;
}
.security-classifications .classification {
  display: flex;
  align-items: center;
  padding: 10px 0;
}
.security-classifications .classification p {
  width: 300px;
}
.security-classifications .classification .button, .security-classifications .classification input {
  margin: 0 10px;
}
.button {
  border: 2px solid black;
  border-radius: 5px;
  padding: 7.5px 20px;
  cursor: pointer;
}
input, textarea {
  padding: 5px 10px;
}

.map-section .selectable {
  fill: #C6C6C6!important;
}
.map-section .mapa .selected, .map-section .mapa .selectable:hover {
  fill: #B91F27!important;
  cursor: pointer;
}
.map-section #disable-css-helper-id .disabled, .map-section #disable-css-helper-id .disabled:hover {
  fill: #EBEBEB!important;
  cursor: default;
}

select {
  padding: 15px 20px 10px 20px; 
  border: 1px solid #000000;
}
.copyright-text {
  font-size: 14px;
  font-family: 'GothamBook';
  color: #BCBCBC;
  text-align: center;
  padding: 20px 0;
}
.copyright-text a {
  color: black;
  text-decoration: none;
}
.logo {
  margin: 40px 10% 60px 10%;
  display: flex;
  justify-content: center;
}
.logo > * {
  margin: 0 80px;
}
.logo .uk-logo {
  width: 80%;
}
.browse-map {
  display: none;
}


.no-login .admin-page {
  display: none;
}
.no-login .login {
  padding: 50px;
  max-width: 200px;
  margin: 0 auto;
}
.login .admin-page {
  display: block;
}
.login .login {
  display: none;
}
.login p {
  margin-top: 40px;
}
.login input {
  margin-top: 10px;
}
.login .button {
  display: table;
  margin-top: 10px;
}

.font-size-14 {
  font-size: 14px;
}
.font-size-15 {
  font-size: 15px;
}
.font-size-18 {
  font-size: 18px;
}

.country-name {
  position: absolute;
  pointer-events: none;
}
.country-name p {
  font-size: 14px;
  background: #F8F8F8;
  box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.15);
  padding: 4px 12px;
  line-height: 36px;
  font-size: 18px;
}
.zoom {
  z-index: 10;
  display: table;
  position: absolute;
  margin-left: 20%;
  padding-top: 100px;
}
.zoom div {
  height: 50px;
  width: 50px;
  text-align: center;
  line-height: 50px;
  background: black;
  color: white;
  display: table;
  user-select: none;
  margin-bottom: 10px;
}
.open-toggleable > .exterior {
  cursor: pointer;
}
.open-toggleable > .interior {
  display: none;
}
.open > .interior {
  display: block;
}

.category, .policy .interior .answer, .policy .interior .question {
  display: none;
}
.category.active, .policy .interior .answer.active, .policy .interior .question.active {
  display: block;
}
.textarea {
  border:solid 1px #ccc;
  font-family: 'GothamBook';
  padding: 5px 10px;
}
.textarea-container .buttons {
  margin: 10px 0;
}
.textarea-container .add-url-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.2);
}
.textarea-container .add-url-popup-container {
  background: white;
  width: fit-content;
  padding: 20px;
  margin: 45vh auto;
  position: relative;
}
.textarea-container .add-url-popup-container p {
  margin-top: 0;
}
.textarea-container .add-url-popup-container svg {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}
.admin-page .category input, .admin-page .category textarea, .admin-page .category .textarea {
  width: 100%;
  margin-top: 10px;
}
.admin-page .category textarea, .admin-page .category .textarea {
  min-height: 100px;
}

.logos {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-left: 15%;
  margin-right: 15%;
  margin-bottom: 90px;
  margin-top: 50px;
}
.logos div {
  width: 15%;
  max-height: 100px;
}
.logos img {
  max-width: 100%;
  height: auto;
  max-height: 100px;
  margin: 0 auto;
  display: block;
}

.cookies-footer {
  background: #273C4E;
  display: flex;
  font-family: 'GothamBook';
  font-size: 14px;
  color: white;
  padding: 20px 15%;
  position: fixed;
  bottom: 0;
  width: 70%;
  z-index: 20;
  align-items: center;
}
.cookies-footer .text {
  font-weight: normal;
  line-height: 19px;
  margin-right: 15px;
}
.cookies-footer .button {
  border: 3px solid #FFFFFF;
  box-sizing: border-box;
  border-radius: 5px;
  padding: 10px 20px;
  margin-left: auto;
  display: table;
}
.cookies-footer a {
  color: white;
}

.privacy-policy-page {
  margin: 100px 15%;  
}
.privacy-policy-page h2 {
  font-size: 32px;
  line-height: 39px;
  color: #1F2522;
  margin: 30px 0 50px 0;
}
.privacy-policy-page p {
  font-size: 14px;
  line-height: 26px;
  font-family: 'GothamBook';
  margin-top: 20px;
}
.privacy-policy-page h4 {
  margin-top: 40px;
}


@media(max-width: 1500px) {
  /*.filters .filter.col-4 {
    width: calc(50% - 2px);
  }*/
  .filters {
    padding: 0 5%;
  }
  .heading {
    padding: 0 10% 5% 10%;
  }
  .map-section.zoomed {
    margin-left: 10%;
    margin-right: 10%;
    width: 80%;
  }
  .logos {
    margin-left: 10%;
    margin-right: 10%;
  }
  .country-selected {
    margin: 20px 10%;
  }
  .country-select {
     margin-left: 10%;
  }
  .country-select .select-country {

  }
  .zoom {
    margin-left: calc(10%);  
  }
}
@media(max-width: 960px) {
  .filters {
    display: block;
    padding: 0 5%;
  }
  .filters .filter.col-3, .filters .filter.col-4 {
    width: 100%;
  }
  .filters .filter:not(:first-of-type)   {
    border-top: unset;
  }
  .heading {
    padding: 0 25px; 
  }
  .heading .heading-title {
    margin-top: 80px;
    margin-bottom: 30px;
  }
  .heading .intro-text {
    margin-top: 30px;
  }/*
  .map-section {
    overflow: scroll;
    padding: 0 20px 0 20px;
    margin-left: 0;
    margin-right: 0;
    width: unset
  }*/
  .map-section {
    overflow: hidden;
  }
  .map-section svg {
    min-width: 1500px;
  }
  .logo {
    margin: 30px 35px 35px 35px;
  }
  .logo > * {
    max-width: calc(100% / 3 - 20px);
    margin: 0 10px;
  }
  .logo > * > * {
    width: 100%;
    height: unset;
  }
  .country-selected .classifications {
    display: block;
  }
  .country-selected .classifications .classification {
    margin-bottom: 20px;
  }
  .country-select {
    text-align: center;
    margin-left: unset;
    width: 100%;
  }
  .country-select .select-country {
    margin-top: 0;
    margin: 0 auto;
  }
  .browse-map {
    display: block;
    margin: 20px auto 45px auto;
  }
  .zoom {
    margin-left: 5%;
  }
  .filters .filter h4 {
    margin-left: 40px;
    text-align: left;
  }
  .filters .filter .information-icon {
    margin-left: auto;
    margin-right: 40px;
  }
  .map-section {
    max-height: 600px;
  }
}
@media(max-width: 500px) {
  .map-section {
    max-height: 450px;
  }
}

ol, ul {
  margin-left: 20px;
}