@font-face {
  font-family: "moderat";
  src: url("https://www.domunevidis.cz/static/fonts/moderat-regular.woff2#iefix") format("woff2"), url("https://www.domunevidis.cz/static/fonts/moderat-regular.woff") format("woff"), url("../fonts/moderat-regular.otf") format("opentype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "moderat";
  src: url("https://www.domunevidis.cz/static/fonts/moderat-bold.woff2#iefix") format("woff2"), url("https://www.domunevidis.cz/static/fonts/moderat-bold.woff") format("woff"), url("https://www.domunevidis.cz/static/fonts/moderat-bold.otf") format("opentype");
  font-weight: bold;
  font-style: normal; }

@font-face {
  font-family: "moderat";
  src: url("https://www.domunevidis.cz/static/fonts/moderat-black.woff2#iefix") format("woff2"), url("https://www.domunevidis.cz/static/fonts/moderat-black.woff") format("woff"), url("../fonts/moderat-black.otf") format("opentype");
  font-weight: 900;
  font-style: normal; }

/* Global */
*,
*:before,
*:after {
  box-sizing: border-box; }

html {
  scroll-behavior: smooth; }

body {
  margin: 0;
  padding: 0;
  background-color: #0b1b2e;
  color: #fff;
  line-height: 1.5;
  font-size: 16px;
  font-family: "moderat", sans-serif; }

.wrap {
  max-width: 90rem;
  margin: 0 auto;
  padding: 0 2rem; }

.narrow {
  max-width: 50rem;
  margin: 0 auto; }

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

img {
  display: block;
  max-width: 100%; }

h1, h2, h3, h4, h5, h6 {
  text-align: center; }

h1 {
  font-size: 3rem;
  font-weight: 900;
  text-transform: uppercase;
  margin-top: 2em; }

.text-bold {
  font-weight: bold; }

section {
  margin: 3rem 0; }

.button {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  text-decoration: none;
  font-size: 1.25rem;
  font-weight: bold;
  border-radius: 2.5rem;
  height: 5rem;
  margin: 0 auto;
  border: 0.15rem solid #845368;
  width: 100%;
  max-width: 30em;
  transition: all .1s ease-out; }
  .button:hover {
    background-color: #845368; }

/* Specific */
body.noscroll {
  overflow: hidden; }

.intro {
  min-height: 100vh;
  display: flex;
  flex-direction: column; }
  .intro header {
    position: relative;
    border-bottom: 1px solid #5D6E81;
    margin-bottom: 4em;
    height: 5rem; }
    .intro header .wrap {
      height: 100%; }
    .intro header .border-container {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: stretch;
      justify-content: space-between;
      gap: 2rem;
      border-width: 0 1px;
      border-style: solid;
      border-color: #5D6E81;
      padding-left: 2rem; }
    .intro header .logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
      height: 100%; }
      .intro header .logo img {
        height: 2rem; }
    .intro header nav {
      display: flex; }
      .intro header nav.visible {
        display: flex;
        z-index: 999; }
      .intro header nav a {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        padding: 0 1.5em;
        overflow: hidden;
        font-weight: bold;
        text-decoration: none;
        text-align: center;
        color: #fff;
        border-left: 1px solid #5D6E81;
        transition: background-color .1s ease-out; }
        .intro header nav a:hover {
          color: #fff;
          background-color: #845368; }
    .intro header .menu-button {
      display: none;
      align-items: center;
      flex-shrink: 0;
      padding: 0 1.5em;
      cursor: pointer;
      border-left: 1px solid #5D6E81; }
      .intro header .menu-button .image {
        height: 2rem;
        width: 2rem;
        background-image: url("https://www.domunevidis.cz/static/img/menu-closed.svg");
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat; }
        .intro header .menu-button .image.open {
          background-image: url("https://www.domunevidis.cz/static/img/menu-open.svg"); }
  .intro section {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center; }
    .intro section .grid {
      display: grid;
      grid-template-columns: 1fr;
      grid-column-gap: 2rem;
      grid-row-gap: 4rem;
      align-items: center; }
    .intro section .text {
      max-width: 25rem;
      margin: 0 auto;
      text-align: center; }
      .intro section .text .title {
        font-weight: bold;
        font-size: 1.953rem; }
      .intro section .text p {
        font-size: 1.25rem; }
    .intro section .player {
      cursor: pointer;
      position: relative; }
      .intro section .player.muted:after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        height: 5rem;
        width: 5rem;
        transform: translate(-2rem, -2.5rem);
        background-image: url("https://www.domunevidis.cz/static/img/mute.svg");
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        pointer-events: none; }
      .intro section .player video {
        width: 100%;
        border-radius: 2rem;
        box-shadow: 0 0 90px 20px rgba(194, 66, 66, 0.75);
        transition: box-shadow 1s ease; }
    .intro section .video-list {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 1rem; }
      .intro section .video-list img {
        display: block;
        border-radius: 1rem;
        cursor: pointer;
        flex: 1;
        max-width: 45%;
        width: 100%; }
        .intro section .video-list img.active {
          outline: 0.15rem solid #845368; }
    .intro section .button {
      width: 100%;
      max-width: 80%; }

.facts {
  text-align: center;
  margin-top: 2rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-image: url("https://www.domunevidis.cz/static/img/bg/facts.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% auto; }
  .facts .title {
    display: block;
    position: relative;
    font-size: 1.953rem;
    font-weight: bold;
    padding-bottom: 1em;
    margin-bottom: 1em; }
    .facts .title:after {
      content: "";
      display: block;
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 5rem;
      height: 1px;
      transform: translatex(-2.5rem);
      background-color: #E6F3FA; }
  .facts .fact-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    padding: 5rem 0 3rem 0; }
    .facts .fact-list .item {
      position: relative;
      display: flex;
      align-items: center;
      flex-direction: column;
      max-width: 13rem;
      padding: 1em 0; }
      .facts .fact-list .item img {
        height: 5em; }
      .facts .fact-list .item .heading {
        font-weight: bold;
        margin: 2em 0 1em 0; }
      .facts .fact-list .item p {
        margin: 0; }
      .facts .fact-list .item:after {
        content: "";
        display: block;
        width: 75%;
        height: 1px;
        background-color: #8493A4;
        margin-top: 4em; }
      .facts .fact-list .item:last-child:after {
        display: none; }
  .facts .source {
    font-size: .9em;
    padding: 0;
    color: #8493A4; }

.principles {
  background-image: url("https://www.domunevidis.cz/static/img/bg/principles.svg");
  background-repeat: no-repeat;
  background-position: -60rem top;
  background-size: auto 100%; }
  .principles .principles-list {
    display: grid;
    grid-template-columns: 1fr;
    grid-column-gap: 8rem;
    grid-row-gap: 2rem;
    margin-top: 5em; }
    .principles .principles-list .dropdown select {
      width: 100%;
      padding: 1.5em;
      background-color: #0b1b2e;
      color: #fff;
      border: 1pt solid #845368;
      border-radius: 1em;
      font-size: 1rem;
      font-weight: bold;
      cursor: pointer;
      transition: background-color .1s ease-out; }
      .principles .principles-list .dropdown select:hover {
        background-color: #845368; }
    .principles .principles-list .list {
      display: none;
      flex-direction: column;
      gap: 1em; }
      .principles .principles-list .list > div {
        padding: 1.5em;
        outline: 1pt solid #8493A4;
        outline-offset: -1pt;
        border-radius: 1em;
        cursor: pointer;
        transition: background-color .1s ease-out; }
        .principles .principles-list .list > div.active {
          border-radius: 1em 0 0 1em;
          position: relative;
          overflow: visible; }
          .principles .principles-list .list > div.active:after {
            content: "";
            display: block;
            position: absolute;
            right: 0;
            top: 0;
            width: 2em;
            height: 100%;
            background-color: #845368;
            clip-path: polygon(0 0, 0 100%, 100% 50%);
            transform: translatex(2em); }
        .principles .principles-list .list > div.active, .principles .principles-list .list > div:hover {
          background-color: #845368;
          outline: none; }
        .principles .principles-list .list > div .title {
          margin: 0;
          font-weight: bold;
          text-align: left;
          font-size: 1.138rem; }
    .principles .principles-list .content {
      display: flex;
      flex-direction: column; }
      .principles .principles-list .content > div {
        height: 0;
        overflow: hidden;
        opacity: 0;
        transform: translatey(-1em);
        transition: opacity .2s ease-out, transform .2s ease-out; }
        .principles .principles-list .content > div.visible {
          height: auto;
          opacity: 1;
          transform: translatex(0); }
      .principles .principles-list .content h2 {
        position: relative;
        text-align: left;
        padding-bottom: 1rem;
        margin-top: 0; }
        .principles .principles-list .content h2:after {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          bottom: 0;
          width: 2em;
          height: 1pt;
          background-color: #8493A4; }
      .principles .principles-list .content a {
        text-decoration: none;
        color: #be98a9; }

.checklist {
  display: flex;
  flex-direction: column;
  background-image: url("https://www.domunevidis.cz/static/img/bg/checklist.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%; }
  .checklist .checklist-cards {
    display: flex;
    justify-content: flex-start;
    gap: 1em;
    margin-top: 2rem;
    overflow-x: scroll;
    scrollbar-width: none;
    padding: 1rem; }
    .checklist .checklist-cards::-webkit-scrollbar {
      width: 0; }
    .checklist .checklist-cards .card {
      display: flex;
      flex-direction: column;
      flex-shrink: 0;
      width: 15em;
      border: 0.15em solid #845368;
      border-radius: 1.5rem;
      padding: 1.5em;
      background-color: #0b1b2e;
      text-align: left;
      user-select: none; }
      .checklist .checklist-cards .card img {
        width: 100%;
        border-radius: 1rem; }
      .checklist .checklist-cards .card > .title {
        position: relative;
        font-weight: bold;
        font-size: 1.138rem;
        padding: 1em 0; }
        .checklist .checklist-cards .card > .title:after {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          bottom: 0;
          width: 25%;
          height: 1px;
          background-color: #fff; }
      .checklist .checklist-cards .card .download {
        margin-top: 1rem;
        cursor: pointer;
        color: inherit;
        text-decoration: none;
        margin-top: auto; }
        .checklist .checklist-cards .card .download:hover {
          color: #be98a9; }
        .checklist .checklist-cards .card .download .title {
          display: flex;
          align-items: baseline;
          font-size: 1.25em;
          font-weight: bold;
          margin-bottom: .25em; }
          .checklist .checklist-cards .card .download .title:after {
            content: url("https://www.domunevidis.cz/static/img/download-icon.svg");
            display: inline-block;
            height: 1em;
            margin-left: .5rem; }
        .checklist .checklist-cards .card .download .meta {
          color: #8493A4;
          font-size: .85em; }

.stories {
  padding-top: 5rem;
  background-image: url("https://www.domunevidis.cz/static/img/bg/stories.svg");
  background-size: auto 110%;
  background-position: center;
  background-repeat: no-repeat; }
  .stories:before {
    content: "";
    display: block;
    width: 100%;
    height: 5rem;
    background-image: url("https://www.domunevidis.cz/static/img/stories.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; }
  .stories h1 {
    padding-top: 0;
    margin-top: 2rem; }
  .stories .stories-masonry {
    display: flex;
    flex-direction: column;
    gap: 2em;
    margin: 5rem auto; }
    .stories .stories-masonry > div {
      padding: 2.5em;
      border: 1pt solid #845368;
      border-radius: 1.5rem;
      background-color: #0b1b2e; }
      .stories .stories-masonry > div h2 {
        position: relative;
        text-align: left;
        padding-bottom: 1rem;
        margin-top: 0; }
        .stories .stories-masonry > div h2:after {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          bottom: 0;
          width: 2em;
          height: 1pt;
          background-color: #8493A4; }
      .stories .stories-masonry > div h3 {
        text-align: left;
        margin-top: 2em; }
      .stories .stories-masonry > div p:last-child {
        margin-bottom: 0; }
  .stories .stories-list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin: 4rem auto; }
    .stories .stories-list .story {
      flex: 1;
      display: flex;
      flex-direction: column;
      max-width: 40rem;
      border: 1pt solid #8493A4;
      border-radius: 1.5rem;
      padding: 1.5em;
      color: inherit;
      background-color: #0b1b2e;
      text-decoration: none;
      transition: all .1s ease-out; }
      .stories .stories-list .story:hover {
        background-color: #845368;
        border-color: #845368; }
        .stories .stories-list .story:hover .title {
          color: #fff; }
        .stories .stories-list .story:hover .readmore:before {
          background-color: #fff; }
      .stories .stories-list .story .title {
        color: #A4A4A4;
        font-weight: bold;
        font-size: 1.25em; }
      .stories .stories-list .story .readmore {
        position: relative;
        font-size: 1.25em;
        font-weight: bold;
        padding-top: 1em;
        margin-top: auto; }
        .stories .stories-list .story .readmore:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: .5em;
          width: 3em;
          height: 1pt;
          background-color: #8493A4; }

.contacts {
  margin-top: 8rem;
  background-image: url("https://www.domunevidis.cz/static/img/bg/contacts.svg");
  background-repeat: no-repeat;
  background-position: -40rem center;
  background-size: auto 100%; }
  .contacts .contact-list {
    margin: 5rem auto 8rem auto; }
    .contacts .contact-list .row {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; }
    .contacts .contact-list .row:first-child .contact:first-child {
      border-top: none; }
    .contacts .contact-list .row .contact:first-child {
      border-top: 1px solid #8493A4; }
    .contacts .contact-list .row .contact {
      width: 100%;
      padding: 3rem 0;
      border-bottom: 1px solid #8493A4;
      flex: 1; }
      .contacts .contact-list .row .contact:last-child {
        border: none; }
      .contacts .contact-list .row .contact .title {
        font-weight: bold;
        font-size: 1.25em; }
      .contacts .contact-list .row .contact .meta {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        font-weight: bold; }
        .contacts .contact-list .row .contact .meta > div {
          display: flex;
          align-items: center;
          gap: 1rem; }
          .contacts .contact-list .row .contact .meta > div:before {
            content: "";
            height: 2rem;
            width: 2rem;
            border: 1px solid #8493A4;
            border-radius: .5rem;
            background-size: 50%;
            background-position: center;
            background-repeat: no-repeat; }
        .contacts .contact-list .row .contact .meta .phone:before {
          background-image: url("https://www.domunevidis.cz/static/img/icons/phone.svg"); }
        .contacts .contact-list .row .contact .meta .website:before {
          background-image: url("https://www.domunevidis.cz/static/img/icons/web.svg"); }
        .contacts .contact-list .row .contact .meta .email:before {
          background-image: url("https://www.domunevidis.cz/static/img/icons/email.svg"); }
        .contacts .contact-list .row .contact .meta a {
          text-decoration: none;
          color: inherit; }
          .contacts .contact-list .row .contact .meta a:hover {
            color: #be98a9; }

.faq {
  background-image: url("https://www.domunevidis.cz/static/img/bg/faq.svg");
  background-repeat: no-repeat;
  background-position: 10vw top;
  background-size: auto 75em; }
  .faq .faq-list {
    width: 100%;
    margin-top: 5em; }
    .faq .faq-list.wrap {
      padding: 0; }
    .faq .faq-list .faq-card {
      position: relative;
      display: grid;
      grid-template-columns: 1em auto;
      column-gap: 1em;
      width: 100%;
      padding: 2em;
      cursor: pointer;
      background-color: inherit;
      transition: all .5s ease;
      margin-bottom: -1px;
      border-width: 1px 0 0 0;
      border-style: solid;
      border-color: rgba(200, 200, 200, 0.1); }
      .faq .faq-list .faq-card:last-child {
        border-width: 1px 0; }
      .faq .faq-list .faq-card.active {
        border-width: 0;
        background-color: #845368;
        z-index: 1; }
        .faq .faq-list .faq-card.active:before {
          border: 0; }
        .faq .faq-list .faq-card.active .answer {
          height: auto;
          margin-top: 1em;
          opacity: 1; }
        .faq .faq-list .faq-card.active .mark:before {
          content: "\2212"; }
      .faq .faq-list .faq-card .mark {
        text-align: center; }
        .faq .faq-list .faq-card .mark:before {
          content: "\002B";
          display: block;
          text-align: right;
          color: #fff;
          font-weight: bold;
          font-size: 1.138rem; }
      .faq .faq-list .faq-card .question {
        font-size: 1.138rem; }
      .faq .faq-list .faq-card .answer {
        height: 0;
        overflow: hidden;
        opacity: 0;
        transition: all .5s ease; }
        .faq .faq-list .faq-card .answer a {
          color: #c6daf1; }
        .faq .faq-list .faq-card .answer ul {
          margin: 0; }

footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  text-align: center;
  font-size: 1.138rem;
  padding: 5.5em 2em 4em 2em;
  margin-top: 10.5em;
  border-top: 1px solid #8493A4; }
  footer:before {
    content: "";
    position: absolute;
    top: -4.5em;
    left: 50%;
    transform: translatex(-4.5em);
    height: 9em;
    width: 9em;
    border: 1px solid #8493A4;
    border-radius: 50%;
    background-image: url("https://www.domunevidis.cz/static/img/pedf-logo-white.svg");
    background-position: center;
    background-size: 75%;
    background-repeat: no-repeat;
    background-color: #0b1b2e; }
  footer a {
    color: inherit;
    text-decoration: none; }
    footer a:hover {
      color: #be98a9; }
  footer .contact-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2em; }
    footer .contact-list div {
      width: 100%;
      max-width: 15rem; }
    footer .contact-list .small {
      font-size: .75em; }
  footer .badge {
    border: 2px solid #845368;
    border-radius: 50%;
    padding: 0;
    max-width: 13em;
    margin: 3em auto; }
    footer .badge img {
      width: 100%; }

.scrollback {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: url("https://www.domunevidis.cz/static/img/scrollback.svg"), #0b1b2e;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 35% auto;
  border: 3px solid #845368;
  transition: transform .1s ease; }
  .scrollback:hover {
    transform: scale(1.2); }

@media only screen and (min-width: 950px) {
  h1 {
    padding-top: 5rem; }
  .intro section .grid {
    grid-template-columns: 2fr 3fr; }
  .intro section .text {
    text-align: left;
    line-height: 1.25;
    margin: 0; }
    .intro section .text .title {
      font-size: 2.5rem; }
  .intro section .video-list {
    order: 4; }
    .intro section .video-list img {
      max-width: 10rem; }
  .intro section .button {
    margin: 0 auto 0 0;
    max-width: 70%; }
  .facts .fact-list {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 0; }
    .facts .fact-list .item {
      border-right: 1px solid #8493A4;
      justify-content: flex-start;
      padding: 0 3rem;
      max-width: 17rem; }
      .facts .fact-list .item:after {
        display: none; }
      .facts .fact-list .item:last-child {
        border: none; }
  .principles .principles-list {
    grid-template-columns: 1fr 1fr; }
    .principles .principles-list .dropdown {
      display: none; }
    .principles .principles-list .list {
      display: flex; }
    .principles .principles-list .content > div {
      transform: translatey(0);
      transform: translatex(-2em); }
  .stories .stories-list {
    flex-direction: row;
    align-items: stretch; }
  .contacts .contact-list .row {
    flex-direction: row;
    margin-bottom: 4rem; }
    .contacts .contact-list .row .contact {
      max-width: 25em;
      padding: 0 3rem;
      border-bottom: none;
      border-right: 1px solid #8493A4; }
      .contacts .contact-list .row .contact:first-child {
        border-top: none; }
  .checklist {
    align-items: center; }
    .checklist .checklist-cards .card {
      width: 17em; }
  .faq {
    background-position: 55vw top; }
  footer .contact-list {
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    gap: 5em; } }

@media only screen and (max-width: 950px) {
  .intro header .border-container {
    border-left: 0;
    padding: 0; }
  .intro header .menu-button {
    display: flex; }
  .intro header nav {
    display: none;
    border: none;
    flex-direction: column;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    min-height: 100vh;
    margin-top: 1px;
    background-color: #0b1b2e; }
    .intro header nav a {
      padding: 2em 1rem;
      border: 0;
      font-weight: bold;
      font-size: 1.138rem;
      border-bottom: 1px solid #5D6E81; } }