@import './fonts.css';


/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul,  fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
  font-family: 'Clan Book', sans-serif;
  overflow-x: hidden;
}


h3 {
  font-weight: bold;
  font-size: 14px !important;
  margin-top: 1em;
  margin-bottom: 0.5em;
  line-height: 1.5em;
}
h4 {
  font-weight: bold;
  font-size: 20px !important;
  margin-top: 1em;
  margin-bottom: 0.5em;
  line-height: 1.5em;
}

ol, ul {
  list-style: none; }

.text-hover {
  color:#213A8F;
  font-weight: bold;
}

.logo-stiftung {
  transform: translateX(-20px); }

.copy-funding {
  font-size: 12px;
  width: 100%;
  color: #000000; }

.credentials {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem !important;
  align-items: flex-end; }

.logo-opendata {
  margin-right: 3rem; }

.logo-berlin {
  margin-right: 3rem; }

svg.logo-berlin:hover path {
  fill: #E60032; }

svg.logo-ibb:hover path#letter {
  fill: #000000; }

svg.logo-ibb:hover polygon#letter {
  fill: #000000; }

svg.logo-ibb:hover path#Shape {
  fill: #00ACCF; }

svg.logo-stiftung:hover path {
    fill: #E60032;
}
svg.logo-stiftung:hover g {
  fill: #E60032;
}
svg.logo-opendata:hover path {
    fill: rgb(72, 103, 206);
} 
svg.logo-opendata:hover polygon {
  fill: rgb(72, 103, 206);
} 

.logo-opendata {
  margin-right: 3rem;
}

.copy-funding {
  line-height: 140%; }

.footer-wrapper {
    display: flex;
    justify-content: space-evenly;
    padding: 2em;
    width: 75%;
   }

   .copy-funding{
    display: flex;  
    justify-content: center;
    background: #213A8F;
    color: white;
    font-size: 12px !important;
    padding-bottom: 2em;
  }
  

.footer-links{
  color: white;
  text-decoration: none;
  font-size: 12px !important;
  align-items: center;
}

.footer-links:hover{
  cursor: pointer;
  font-weight: bold !important;
}

#s_contact {
  background: #2e91d2; }

.button-primary {
  transition: background 0.1s;
  background: #E60032;
  font-family: 'Clan Book', sans-serif;
  font-size: 16px;
  padding: .75rem 1.5rem;
  border-radius: 5px;
  color: white;
  border: 0px solid; }
  .button-primary:focus {
    outline: 0; }
  .button-primary:hover {
    background: #b10026;
    transition: background 0.1s; }

.headline-01 {
  font-size: 57px;
  font-family: 'Clan Medium', sans-serif;
  line-height: 120%; }

.secondary {
  color: #213A8F; }

.headline-02.white {
  color: white;
  letter-spacing: 1px; }

.headline-04.white {
  color: white; }

.bullet.white {
  color: white; }

.headline-02 {
  font-family: 'Clan Medium', sans-serif;
  font-size: 24px;
  line-height: 140%;
  margin-bottom: 2rem;
  color: #000000; 
}

.headline-03.white {
  font-family: 'Clan Medium', sans-serif;
  color: white;
  letter-spacing: 1px; }

.odis-logo-typo {
  letter-spacing: 5px; }

.headline-03 {
  font-family: 'Clan Medium', sans-serif;
  font-size: 24px;
  line-height: 140%;
  color: #000000;
  letter-spacing: 0.5px; }

.headline-04 {
  font-size: 16px;
  line-height: 160%;
  color: #000000; 
}
.headline-05 {
  font-size: 14px;
  font-style: italic;
  line-height: 160%;
  color: #000000;
  padding-bottom: 2rem;
}

.intro {
  background: #213A8F; }

.footer {
  display: flex;  
  justify-content: center;
  height: 5em;
  background: #213A8F;
}


/* @-moz-document url-prefix() {
  h1 {
    color: #fff; 
    font-size: 60px;
  margin: 50px 0 50px 0;} } */

h1#title {
    font-family: 'Clan Medium', sans-serif;
    font-size: 36px;
    margin-bottom: 10px;
}

@media screen and (max-width: 600px) {
  h1#title {
    font-size: 36px;
    margin-bottom: 15px;
  }

  .headline-02 {
    font-size: 20px !important;
    font-family: 'Clan Book'
  }
}

.section {
  margin: 0 auto;
  position: relative;
  width: 94%;
  scroll-behavior: smooth; }

.section-wrapper {
  background: #213A8F;
  height: auto;
  min-width: 100%;
  scroll-behavior: smooth; }

g.tick > text {
  font-family: 'Clan Medium', sans-serif;
}

.section-wrapper.white {
  background: white; }

.logo {
  position: absolute;
  color: white;
  text-transform: uppercase;
  font-family: 'Clan Medium',sans-serif;
  letter-spacing: 3px;
  line-height: 150%; }
  .logo .logo-type.book {
    font-family: 'Clan Book', sans-serif; }

.section-wrapper.intro {
  height: 100vh; }

.section-intro {
  background-color: #213A8F;
  height: 100%;
  position: static; }

p.copy {
  font-family: 'Clan Book', sans-serif;
  line-height: 160%; }

.full-width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw; }

  .pt-3 {
    padding-top: 3rem; }

.pt-6 {
  padding-top: 2rem; }

  .pt-12 {
    padding-top: 6rem; }

.pt-18 {
  padding-top: 18rem; }


.pb-3 {
  padding-bottom: 3rem; }

.pb-6 {
  padding-bottom: 1.5rem; 
}
.bl {
    padding-top: 3rem;
    padding-bottom: 1rem;
} 

@media screen and (max-width: 600px) {
  .pb-6 {
    padding-bottom: 1.5rem; 
  }
  .pt-6 {
    padding-top: 2rem; 
  }
  .bl {
  padding-top: 4rem;
  padding-bottom: 2rem;
  } 
  
}

.pb-12 {
  padding-bottom: 6rem; }

.mt-12 {
  margin-top: 12rem; }

.mr-3 {
  margin-right: 3rem; }

.mt-4 {
  margin-top: 4rem; }

.mt-2 {
  margin-top: 2rem; }

.mb-4 {
  margin-bottom: 4rem; }

.mb-6 {
  margin-bottom: 6rem; }

.mb-2 {
  margin-bottom: 2rem; }

.mb-12 {
  margin-bottom: 12rem; }

.mb-25 {
  margin-bottom: 2.5rem; }

.mb-1 {
  margin-bottom: 1rem; }

.pb-5 {
  padding-bottom: 2rem; }

.pt-5 {
  padding-top: 2rem; }

.pt-1 {
  padding-top: 1rem; }

.pb-1 {
  padding-bottom: 1rem; }

.condition-3 {
  display: none; }

@media screen and (min-width: 64rem) {
  .section {
    max-width: 64rem;
    width: 85%; }

  .section.flex-wrapper {
    max-width: 80rem;
  }

  .schedule-event-block {
    width: 85%; }
  .conditional-break {
    display: block; }
  .schedule-event-details-wrapper {
    width: 330px; } }

@media screen and (min-width: 54rem) and (max-width: 64rem) {
  
  .schedule-event-details-wrapper {
    width: 45%; }
  .section {
    width: 80%; }
  .schedule-desc-wrapper {
    width: 380px; }
  .copy-funding {
    width: 100%; }
  .footer-wrapper {
    left: 0;
    position: relative;
  }
  .tile-wrapper .tile {
    width: 42%; }
  .schedule-wrapper .schedule-event .schedule-date .headline-02 {
    transform: translateY(-5px); }
  .schedule-wrapper .schedule-event .schedule-date .schedule-date-month {
    transform: translateY(-8px); }
  .condition-3 {
    display: block; }
  .schedule-event-block {
    width: 80%; }
  .headline-01 {
    font-family: 'Clan Medium', sans-serif;
    font-size: 48px; }
  .conditional-break {
    display: block; }
  .conditional-break-2 {
    display: none; }
  .pb-12 {
    padding-bottom: 10rem; }
  .pt-12 {
    padding-top: 10rem; } }

@media screen and (min-width: 28rem) and (max-width: 54rem) {
  
  .schedule-event-details-wrapper {
    width: 100%; }
  .section {
    width: 80%; }
  .navbar {
    font-size: 12px; }
    .navbar .nav-item {
      cursor: pointer;
      margin-right: .75rem; }
  .copy-funding {
    width: 100%; }
  .condition-3 {
    display: none; }
  .headline-01 {
    font-size: 48px; }
  .schedule-event-block {
    width: 80%; }
  .profile-wrapper {
    display: block; }
    .profile-wrapper .profile-desc-wrapper {
      margin-left: 0; }
  .schedule-wrapper .schedule-event .pb-1 {
    padding-bottom: 2rem; }
  .schedule-wrapper .schedule-event .pt-1 {
    padding-top: 2rem; }
  .schedule-wrapper .schedule-event .schedule-date {
    background: none;
    flex-direction: row;
    justify-content: flex-start;
    height: 20px;
    text-align: left; }
    .schedule-wrapper .schedule-event .schedule-date .headline-02 {
      font-family: 'Clan Medium', sans-serif;
      font-size: 16px;
      color: #000000; }
    .schedule-wrapper .schedule-event .schedule-date .schedule-date-month {
      color: #000000;
      transform: translateY(2px) translateX(4px); }
    .schedule-wrapper .schedule-event .schedule-date .headline-03 {
      font-size: 16px;
      letter-spacing: 0.5px; }
  .schedule-wrapper .schedule-event .schedule-event-block {
    flex-wrap: wrap; }
    .schedule-wrapper .schedule-event .schedule-event-block .schedule-time {
      margin-right: 0;
      padding-top: 0rem;
      text-align: right; }
    .schedule-wrapper .schedule-event .schedule-event-block .schedule-desc-wrapper {
      padding-top: 0.5rem; }
  .schedule-time {
    margin-right: 0;
    padding-top: 0rem;
    text-align: right; }
  .footer-wrapper {
    left: 0;
    position: relative;}
  .tile-wrapper .tile {
    margin-top: 4rem;
    width: 80%; }
    .tile-wrapper .tile .tile-arrow-short {
      display: none; }
  .conditional-break-2 {
    display: none; }
  .pb-12 {
    padding-bottom: 8rem; }
  .pt-12 {
    padding-top: 8rem; }
  .copy-funding {
    line-height: 140%;
    width: 100%; } }

@media screen and (min-width: 0rem) and (max-width: 28rem) {

  .section {
    width: 90%; }
  .copy-funding {
    line-height: 140%;
    width: 100%; }
  p.copy {
    line-height: 150%; }
  .navbar {
    font-size: 10px;
    font-weight: bold; }
    .navbar .nav-item {
      cursor: pointer;
      margin-right: .75rem; }
  .pt-18 {
    padding-top: 9rem; }
  .schedule-wrapper .schedule-event .pb-1 {
    padding-bottom: 2rem; }
  .schedule-wrapper .schedule-event .pt-1 {
    padding-top: 2rem; }
  .schedule-wrapper .schedule-event .schedule-date {
    background: none;
    flex-direction: row;
    justify-content: flex-start;
    height: 20px;
    text-align: left;
    transform: translateX(0px); }
    .schedule-wrapper .schedule-event .schedule-date .headline-02 {
      font-size: 16px;
      color: #000000;
      letter-spacing: 0.5px; }
    .schedule-wrapper .schedule-event .schedule-date .schedule-date-month {
      color: #000000;
      transform: translateY(2px) translateX(4px); }
    .schedule-wrapper .schedule-event .schedule-date .headline-03 {
      font-size: 16px;
      letter-spacing: 0.5px; }
  .schedule-wrapper .schedule-event .schedule-event-block {
    flex-wrap: wrap; }
    .schedule-wrapper .schedule-event .schedule-event-block .schedule-time {
      margin-right: 0;
      padding-top: 0rem;
      color: #000000;
      text-align: right; }
    .schedule-wrapper .schedule-event .schedule-event-block .schedule-desc-wrapper {
      padding-top: 0.5rem; }
  .footer-wrapper {
    left: 0;
    flex-direction: column;
    position: relative;
}
  .conditional-break-2 {
    display: none; }
  .pb-5 {
    padding-bottom: 2rem; }
  .headline-01 {
    font-size: 30px;
    letter-spacing: 0.5px; }
  .headline-02 {
    font-size: 28px;
    font-family: 'Clan Book' !important;
    letter-spacing: 0.5px; }
  .headline-03 {
    font-family: 'Clan Medium', sans-serif;
    font-size: 18px;
    letter-spacing: 0.5px; }
  .headline-04 {
    line-height: 140%;
    color: #000000; }
  .headline-05 {
    line-height: 140%;
    color: #000000; }
  .schedule-event-block {
    width: 90%; }
    .schedule-event-block .schedule-date {
      transform: translateX(-10px); }
  .mb-25 {
    margin-bottom: 1rem; }
  .mb-4 {
    margin-bottom: 2.5rem; }
  .bullets-wrapper .bullet {
    transform: translateX(25px);
    width: 90%;
    line-height: 140%; }
  .bullets-wrapper .bullet:before {
    transform: translateX(-25px) translateY(5px); }
  .tiles-wrapper > div:nth-child(1) div:nth-child(1) .tile-image {
    height: 140px; }
  .tiles-wrapper > div:nth-child(1) div:nth-child(2) .tile-image {
    height: 125px; }
  .tiles-wrapper > div:nth-child(3) div:nth-child(1) .tile-image {
    height: 140px; }
  .tiles-wrapper > div:nth-child(3) div:nth-child(2) .tile-image {
    height: 120px; }
  .profile-wrapper {
    display: block; }
    .profile-wrapper .profile-desc-wrapper {
      margin-left: 0; }
  .tile-wrapper.mt-4 {
    margin-top: 0; }
  .tile-wrapper .tile {
    width: 100%;
    margin-right: 0;
    margin-top: 4rem; }
    .tile-wrapper .tile .tile-arrow-short {
      display: none; }
    .tile-wrapper .tile .tile-headline-wrapper .process-step {
      font-size: 24px;
      transform: translateY(0px);
      position: inherit;
      display: block; }
    .tile-wrapper .tile .tile-image {
      height: 150px; }
  .conditional-break-2 {
    display: none; }
  .pb-12 {
    padding-bottom: 7rem; }
  .pt-12 {
    padding-top: 7rem; } }

canvas {
  margin: auto; }

.flex {
  display: flex; }

.col {
  flex-direction: column; }

.row {
  flex-direction: row; }

h2.top-pad {
  margin-top: 3em; }

.content p {
  color: white;
  font-size: 0.8em;
  padding-top: 0.5em; }

.transp {
  margin-top: .25rem;
  opacity: .5; }

.dataset {
  display: flex;
  margin-bottom: 1rem;
  line-height: 125%;
  width: 100%;
  position: relative; }
  .dataset span {
    width: 90%; }

.content a {
  text-decoration: none; }

.right {
  float: right;
  text-align: right; }

@media screen and (max-width: 800px) {
  .chart-content {
    display: flex;
    flex-direction: column;
    display: grid;
    margin: 0 auto;
  }
}

.number-div{
  display: flex;
  text-align: center;
  height: auto;
  min-width: 12em;
  max-width: 16em;
  padding: 2em;
  margin: 0.5em;
  flex-direction: column;
  justify-content: space-evenly;
  background: #efefef;
}

@media screen and (max-width: 600px) {
  .chart-content {
    display: flex;
    flex-direction: column;
    display: grid;

  }
}


div#content {
  width: 550px;
}

#map-svg {
  margin-top: 2em;
}

@media screen and (min-width: 1200px) {
  .map-text {
    padding-right: 3em;
  }
}

/*map*/

path:hover{
  stroke-width: 2;
  stroke:rgb(209, 209, 209);
}


.grey-bg {
  background: #efefef;
}

.flex-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.col {
  flex-direction: column !important;
}

@media screen and (max-width: 1200px) {
  .flex-wrapper {
    display: flex;
    flex-direction: column;
  
  }
}


svg {
  display: block;
  margin-top: auto;
}

input{
  display: block;
  width: 150px;
  margin-top: 2em;
}


@-webkit-keyframes sk-scaleout {
  0% { -webkit-transform: scale(0) }
  100% {
    -webkit-transform: scale(1.0);
    opacity: 0;
  }
}

@keyframes sk-scaleout {
  0% { 
    -webkit-transform: scale(0);
    transform: scale(0);
  } 100% {
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
    opacity: 0;
  }
}

a.blog-link {
  display: flex;
}
.blog-link {
  font-weight: 700;
  margin-left: 60px;
  font-family: 'Clan Medium', sans-serif;
  letter-spacing: 0.5px;
  color: black;
  text-decoration: none;
}
.blog-link::before {
      content: '';
      position: absolute;
      transform: translateX(-60px) translateY(-14px);
      width: 3rem;
      height: 3rem;
      border-radius: 100%;
      background:#ced4da;
      transition: .1s background linear;
}
.blog-link:hover::before {
      content: '';
      position: absolute;
      transform: translateX(-60px) translateY(-14px);
      width: 3rem;
      height: 3rem;
      border-radius: 100%;
      background: #E60032; 
      transition: .1s background linear;
}
.blog-link::after {
      background-image: url(../img/arrow-bullet.svg);
      transform: translateY(2px) translateX(-1px) rotate(180deg);
      background-size: contain;
      content: ' ';
      width: 8px;
      position: absolute;
      height: 13px;
      left: 20px;
}
.blog-link:hover::after {
      background-image: url(../img/arrow-bullet-white.svg);
      background-size: contain;
      transform: translateY(2px) translateX(-1px) rotate(180deg);
      content: ' ';
      width: 8px;
      position: absolute;
      height: 13px;
      left: 20px;
}
a.blog-link {
  padding-bottom: 4%;
  text-decoration: none ;
  color: black;
}
a.blog-link:hover {
  padding-bottom: 4%;
  text-decoration: none ;
  color: black;
} 


h4.bold {
  font-weight: bold;
}
.headline-02b {
    font-family: 'Clan Medium', sans-serif;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 2rem;
    color: #000000; 
  }