.contact-page {
  display: flex;
  flex-direction: column;
  margin-bottom: 5rem;

}

.contact-info-blocks {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 2rem;
}

.contact-info-block.contact-address {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.contact-page .contact-block.address {
  flex: 0 0 30%;
}
/*
.contact-page.map {
  aspect-ratio: 16 / 9; !* nebo 4 / 3, 1 / 1 atd. *!
  width: 100%;
}
*/

/*
.contact-page.map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
*/

.contact-info-block-address,
.contact-info-block-names {
  flex: 0 1 40%;
}

.responsive-iframe-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 50%; /* Poměr stran 2:1 (50% = 1/2 výšky vůči šířce) */
  border: 1px solid red;
}

.responsive-iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border: none;
}

@media screen and (min-width: 576px) {
  .contact-info-block.contact-address {
    flex-direction: row;
    margin-bottom: 4rem;
  }

}

@media screen and (min-width: 768px) {
}

@media screen and (min-width: 992px) {
  .contact-page {
    flex-direction: row;
    justify-content: space-between;
  }

  .contact-page .contact-block {
    flex: 0 0 60%;
  }

}

@media screen and (min-width: 1200px) {
}

@media screen and (min-width: 1400px) {
}
