@charset "UTF-8";
/*---------------------------------------------------
                  Global variables
---------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");
@font-face {
  font-family: 'Bulevar';
  src: url("../font/Bulevar-Regular.woff2") format("woff2"), url("../font/Bulevar-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal-centered {
    right: auto;
    left: auto;
    margin: 0 auto; } }

.align-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
          order: 6; }

@media screen and (min-width: 34.25em) {
  .xsmall-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xsmall-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xsmall-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xsmall-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xsmall-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xsmall-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (orientation: landscape) {
  .landscape-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .landscape-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .landscape-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .landscape-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .landscape-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .landscape-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 48em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 75em) {
  .xlarge-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 85.375em) {
  .xxlarge-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 120em) {
  .fullHD-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .fullHD-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .fullHD-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .fullHD-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .fullHD-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .fullHD-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 100em) {
  .xxxlarge-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xxxlarge-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xxxlarge-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xxxlarge-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xxxlarge-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xxxlarge-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media screen and (min-width: 34.25em) {
  .xsmall-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .xsmall-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xsmall-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xsmall-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xsmall-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xsmall-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xsmall-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xsmall-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (orientation: landscape) {
  .landscape-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .landscape-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .landscape-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .landscape-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .landscape-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .landscape-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .landscape-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .landscape-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 48em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 75em) {
  .xlarge-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 85.375em) {
  .xxlarge-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .xxlarge-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxlarge-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxlarge-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 120em) {
  .fullHD-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .fullHD-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .fullHD-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .fullHD-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .fullHD-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .fullHD-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .fullHD-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .fullHD-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 100em) {
  .xxxlarge-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .xxxlarge-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxxlarge-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxxlarge-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxxlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxxlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxxlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxxlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.row {
  max-width: 160rem;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .row .row {
    margin-right: -0.5rem;
    margin-left: -0.5rem; }
    @media screen and (min-width: 34.25em) {
      .row .row {
        margin-right: -0.5rem;
        margin-left: -0.5rem; } }
    @media screen and (orientation: landscape) {
      .row .row {
        margin-right: -0.5rem;
        margin-left: -0.5rem; } }
    @media print, screen and (min-width: 48em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    @media screen and (min-width: 75em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    @media screen and (min-width: 85.375em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    @media screen and (min-width: 120em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    @media screen and (min-width: 100em) {
      .row .row {
        margin-right: -3rem;
        margin-left: -3rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row.is-collapse-child,
  .row.collapse > .column > .row,
  .row.collapse > .columns > .row {
    margin-right: 0;
    margin-left: 0; }

.column, .columns {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  min-width: 0; }
  @media print, screen and (min-width: 48em) {
    .column, .columns {
      padding-right: 3rem;
      padding-left: 3rem; } }

.column.row.row, .row.row.columns {
  float: none;
  display: block; }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.small-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 8.33333%;
          flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 41.66667%;
          flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 58.33333%;
          flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.66667%;
          flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 83.33333%;
          flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 91.66667%;
          flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-up-1 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-1 > .column, .small-up-1 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

.small-up-2 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-2 > .column, .small-up-2 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

.small-up-3 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-3 > .column, .small-up-3 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }

.small-up-4 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-4 > .column, .small-up-4 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

.small-up-5 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-5 > .column, .small-up-5 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%; }

.small-up-6 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-6 > .column, .small-up-6 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }

.small-up-7 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-7 > .column, .small-up-7 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 14.28571%;
            flex: 0 0 14.28571%;
    max-width: 14.28571%; }

.small-up-8 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-8 > .column, .small-up-8 > .columns {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.5rem;
  padding-left: 0.5rem; }

@media screen and (min-width: 34.25em) {
  .xsmall-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xsmall-offset-0 {
    margin-left: 0%; }
  .xsmall-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xsmall-offset-1 {
    margin-left: 8.33333%; }
  .xsmall-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xsmall-offset-2 {
    margin-left: 16.66667%; }
  .xsmall-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xsmall-offset-3 {
    margin-left: 25%; }
  .xsmall-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xsmall-offset-4 {
    margin-left: 33.33333%; }
  .xsmall-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xsmall-offset-5 {
    margin-left: 41.66667%; }
  .xsmall-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xsmall-offset-6 {
    margin-left: 50%; }
  .xsmall-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xsmall-offset-7 {
    margin-left: 58.33333%; }
  .xsmall-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xsmall-offset-8 {
    margin-left: 66.66667%; }
  .xsmall-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xsmall-offset-9 {
    margin-left: 75%; }
  .xsmall-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xsmall-offset-10 {
    margin-left: 83.33333%; }
  .xsmall-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xsmall-offset-11 {
    margin-left: 91.66667%; }
  .xsmall-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-1 > .column, .xsmall-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xsmall-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-2 > .column, .xsmall-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xsmall-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-3 > .column, .xsmall-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xsmall-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-4 > .column, .xsmall-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xsmall-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-5 > .column, .xsmall-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xsmall-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-6 > .column, .xsmall-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xsmall-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-7 > .column, .xsmall-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xsmall-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xsmall-up-8 > .column, .xsmall-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 34.25em) and (min-width: 34.25em) {
  .xsmall-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xsmall-unstack > .column, .row.xsmall-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 34.25em) {
    .row.xsmall-unstack > .column, .row.xsmall-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 34.25em) {
  .xsmall-collapse > .column, .xsmall-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xsmall-uncollapse > .column, .xsmall-uncollapse > .columns {
    padding-right: 0.5rem;
    padding-left: 0.5rem; } }

@media screen and (orientation: landscape) {
  .landscape-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .landscape-offset-0 {
    margin-left: 0%; }
  .landscape-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .landscape-offset-1 {
    margin-left: 8.33333%; }
  .landscape-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .landscape-offset-2 {
    margin-left: 16.66667%; }
  .landscape-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .landscape-offset-3 {
    margin-left: 25%; }
  .landscape-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .landscape-offset-4 {
    margin-left: 33.33333%; }
  .landscape-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .landscape-offset-5 {
    margin-left: 41.66667%; }
  .landscape-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .landscape-offset-6 {
    margin-left: 50%; }
  .landscape-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .landscape-offset-7 {
    margin-left: 58.33333%; }
  .landscape-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .landscape-offset-8 {
    margin-left: 66.66667%; }
  .landscape-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .landscape-offset-9 {
    margin-left: 75%; }
  .landscape-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .landscape-offset-10 {
    margin-left: 83.33333%; }
  .landscape-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .landscape-offset-11 {
    margin-left: 91.66667%; }
  .landscape-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-1 > .column, .landscape-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .landscape-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-2 > .column, .landscape-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .landscape-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-3 > .column, .landscape-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .landscape-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-4 > .column, .landscape-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .landscape-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-5 > .column, .landscape-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .landscape-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-6 > .column, .landscape-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .landscape-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-7 > .column, .landscape-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .landscape-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .landscape-up-8 > .column, .landscape-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (orientation: landscape) and (orientation: landscape) {
  .landscape-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.landscape-unstack > .column, .row.landscape-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (orientation: landscape) {
    .row.landscape-unstack > .column, .row.landscape-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (orientation: landscape) {
  .landscape-collapse > .column, .landscape-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .landscape-uncollapse > .column, .landscape-uncollapse > .columns {
    padding-right: 0.5rem;
    padding-left: 0.5rem; } }

@media print, screen and (min-width: 48em) {
  .medium-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-1 > .column, .medium-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .medium-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-2 > .column, .medium-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .medium-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-3 > .column, .medium-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .medium-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-4 > .column, .medium-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .medium-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-5 > .column, .medium-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .medium-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-6 > .column, .medium-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .medium-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-7 > .column, .medium-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .medium-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-8 > .column, .medium-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .medium-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.medium-unstack > .column, .row.medium-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media print, screen and (min-width: 48em) {
    .row.medium-unstack > .column, .row.medium-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media print, screen and (min-width: 48em) {
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-1 > .column, .large-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .large-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-2 > .column, .large-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .large-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-3 > .column, .large-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .large-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-4 > .column, .large-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .large-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-5 > .column, .large-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .large-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-6 > .column, .large-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .large-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-7 > .column, .large-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .large-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-8 > .column, .large-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.large-unstack > .column, .row.large-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media print, screen and (min-width: 64em) {
    .row.large-unstack > .column, .row.large-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media print, screen and (min-width: 64em) {
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

@media screen and (min-width: 75em) {
  .xlarge-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xlarge-offset-0 {
    margin-left: 0%; }
  .xlarge-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .xlarge-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .xlarge-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .xlarge-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .xlarge-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .xlarge-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .xlarge-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .xlarge-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .xlarge-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .xlarge-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .xlarge-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .xlarge-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xlarge-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xlarge-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xlarge-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xlarge-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xlarge-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xlarge-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xlarge-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 75em) and (min-width: 75em) {
  .xlarge-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xlarge-unstack > .column, .row.xlarge-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 75em) {
    .row.xlarge-unstack > .column, .row.xlarge-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 75em) {
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

@media screen and (min-width: 85.375em) {
  .xxlarge-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .xxlarge-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .xxlarge-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .xxlarge-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .xxlarge-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .xxlarge-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .xxlarge-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .xxlarge-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .xxlarge-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .xxlarge-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .xxlarge-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .xxlarge-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .xxlarge-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xxlarge-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xxlarge-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xxlarge-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xxlarge-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xxlarge-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xxlarge-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xxlarge-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 85.375em) and (min-width: 85.375em) {
  .xxlarge-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xxlarge-unstack > .column, .row.xxlarge-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 85.375em) {
    .row.xxlarge-unstack > .column, .row.xxlarge-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 85.375em) {
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

@media screen and (min-width: 120em) {
  .fullHD-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .fullHD-offset-0 {
    margin-left: 0%; }
  .fullHD-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .fullHD-offset-1 {
    margin-left: 8.33333%; }
  .fullHD-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .fullHD-offset-2 {
    margin-left: 16.66667%; }
  .fullHD-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .fullHD-offset-3 {
    margin-left: 25%; }
  .fullHD-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .fullHD-offset-4 {
    margin-left: 33.33333%; }
  .fullHD-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .fullHD-offset-5 {
    margin-left: 41.66667%; }
  .fullHD-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .fullHD-offset-6 {
    margin-left: 50%; }
  .fullHD-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .fullHD-offset-7 {
    margin-left: 58.33333%; }
  .fullHD-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .fullHD-offset-8 {
    margin-left: 66.66667%; }
  .fullHD-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .fullHD-offset-9 {
    margin-left: 75%; }
  .fullHD-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .fullHD-offset-10 {
    margin-left: 83.33333%; }
  .fullHD-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .fullHD-offset-11 {
    margin-left: 91.66667%; }
  .fullHD-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-1 > .column, .fullHD-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .fullHD-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-2 > .column, .fullHD-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .fullHD-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-3 > .column, .fullHD-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .fullHD-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-4 > .column, .fullHD-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .fullHD-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-5 > .column, .fullHD-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .fullHD-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-6 > .column, .fullHD-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .fullHD-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-7 > .column, .fullHD-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .fullHD-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .fullHD-up-8 > .column, .fullHD-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 120em) and (min-width: 120em) {
  .fullHD-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.fullHD-unstack > .column, .row.fullHD-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 120em) {
    .row.fullHD-unstack > .column, .row.fullHD-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 120em) {
  .fullHD-collapse > .column, .fullHD-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .fullHD-uncollapse > .column, .fullHD-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

@media screen and (min-width: 100em) {
  .xxxlarge-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xxxlarge-offset-0 {
    margin-left: 0%; }
  .xxxlarge-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xxxlarge-offset-1 {
    margin-left: 8.33333%; }
  .xxxlarge-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xxxlarge-offset-2 {
    margin-left: 16.66667%; }
  .xxxlarge-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xxxlarge-offset-3 {
    margin-left: 25%; }
  .xxxlarge-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xxxlarge-offset-4 {
    margin-left: 33.33333%; }
  .xxxlarge-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xxxlarge-offset-5 {
    margin-left: 41.66667%; }
  .xxxlarge-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xxxlarge-offset-6 {
    margin-left: 50%; }
  .xxxlarge-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xxxlarge-offset-7 {
    margin-left: 58.33333%; }
  .xxxlarge-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xxxlarge-offset-8 {
    margin-left: 66.66667%; }
  .xxxlarge-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xxxlarge-offset-9 {
    margin-left: 75%; }
  .xxxlarge-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xxxlarge-offset-10 {
    margin-left: 83.33333%; }
  .xxxlarge-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xxxlarge-offset-11 {
    margin-left: 91.66667%; }
  .xxxlarge-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-1 > .column, .xxxlarge-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xxxlarge-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-2 > .column, .xxxlarge-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xxxlarge-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-3 > .column, .xxxlarge-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xxxlarge-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-4 > .column, .xxxlarge-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xxxlarge-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-5 > .column, .xxxlarge-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xxxlarge-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-6 > .column, .xxxlarge-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xxxlarge-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-7 > .column, .xxxlarge-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xxxlarge-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxxlarge-up-8 > .column, .xxxlarge-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 100em) and (min-width: 100em) {
  .xxxlarge-expand {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xxxlarge-unstack > .column, .row.xxxlarge-unstack > .columns {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 100em) {
    .row.xxxlarge-unstack > .column, .row.xxxlarge-unstack > .columns {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 100em) {
  .xxxlarge-collapse > .column, .xxxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xxxlarge-uncollapse > .column, .xxxlarge-uncollapse > .columns {
    padding-right: 3rem;
    padding-left: 3rem; } }

.shrink {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  max-width: 100%; }

.column-block {
  margin-bottom: 1rem; }
  .column-block > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 48em) {
    .column-block {
      margin-bottom: 6rem; }
      .column-block > :last-child {
        margin-bottom: 0; } }

body.is-reveal-open {
  overflow: hidden; }

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: scroll; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 3rem;
  border: 1px solid;
  border-radius: 0;
  background-color: #fff;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 48em) {
    .reveal {
      right: auto;
      left: auto;
      margin: 0 auto;
      width: 600px;
      max-width: 160rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 48em) {
    .reveal.tiny {
      right: auto;
      left: auto;
      margin: 0 auto;
      width: 30%;
      max-width: 160rem; } }
  @media print, screen and (min-width: 48em) {
    .reveal.small {
      right: auto;
      left: auto;
      margin: 0 auto;
      width: 50%;
      max-width: 160rem; } }
  @media print, screen and (min-width: 48em) {
    .reveal.large {
      right: auto;
      left: auto;
      margin: 0 auto;
      width: 90%;
      max-width: 160rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 34.1875em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

/*
  reset
*/
* {
  box-sizing: border-box; }

ul, ol {
  margin: 0;
  padding: 0; }

td, tr, table, tbody {
  padding: 0;
  margin: 0; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0; }

ul {
  list-style: none; }

/*
  reset :: END
*/
html, body {
  height: 100%;
  margin: 0;
  scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html, body {
    scroll-behavior: auto; } }

html {
  font-size: 62.5%; }

body {
  background-color: #012641;
  color: white;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1.6rem;
  line-height: 1.4;
  text-align: left; }
  @media print, screen and (min-width: 64em) {
    body {
      font-size: 1.8rem; } }

b, strong {
  font-weight: 700; }

a, .link {
  color: inherit;
  background: none;
  border: none;
  text-decoration: none;
  cursor: pointer; }

table {
  width: 100%;
  border: 0; }

tr {
  margin: 0.5rem 0; }

td + td {
  padding-left: 1rem; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

::-moz-selection {
  background: #06F297;
  color: #012641; }

::selection {
  background: #06F297;
  color: #012641; }

.svg-img {
  fill: currentColor;
  width: 100%;
  height: 100%; }

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

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

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

.no-space {
  margin: 0;
  padding: 0; }

.canvas {
  position: relative;
  padding: 4rem 2rem;
  z-index: 0; }
  .canvas--white {
    background-color: white; }
  .canvas--green {
    background: #06F297; }
  .canvas--dark {
    background: #012641;
    color: white; }
  .canvas--deep {
    background: #001a2d;
    color: white; }
  @media print, screen and (min-width: 48em) {
    .canvas {
      padding: 8rem 0; } }
  @media screen and (min-width: 75em) {
    .canvas {
      padding: 10rem 0; } }
  @media screen and (min-width: 85.375em) {
    .canvas {
      padding: 12rem 0; } }
  .canvas--first {
    padding-top: 14rem;
    z-index: 2; }
    @media screen and (min-width: 75em) {
      .canvas--first {
        padding-top: 18rem; } }
  .canvas--footer {
    background-color: #001a2d;
    color: white; }
  @media print, screen and (min-width: 48em) {
    .canvas--lines::before, .canvas--lines::after {
      content: '';
      position: absolute;
      top: 0;
      width: .1rem;
      height: 100%;
      background-color: rgba(1, 38, 65, 0.1); }
    .canvas--lines::before {
      left: 33.333%; }
    .canvas--lines::after {
      left: 66.666%; } }

@media screen and (min-width: 48em) and (min-width: 100em) {
  .canvas--lines::before {
    left: calc(50% - 26.72rem); }
  .canvas--lines::after {
    left: calc(50% + 26.72rem); } }
  .canvas--lines.canvas--dark::before, .canvas--lines.canvas--dark::after, .canvas--lines.canvas--deep::before, .canvas--lines.canvas--deep::after {
    background-color: rgba(255, 255, 255, 0.1); }

/* zelený pruh: zelené doplňky by na něm zmizely */
.canvas--green .page__name::before {
  background-color: #012641; }

.canvas--white + .canvas--white {
  padding-top: 0; }

.canvas--dark + .canvas--dark,
.canvas--deep + .canvas--deep {
  padding-top: 0; }

/* kotvy sekcí: nativní skok i plynulý scroll skončí pod fixní hlavičkou */
section[id],
.anchor-target {
  scroll-margin-top: 8rem; }

.close-button {
  width: 6rem;
  height: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  background: #012641;
  border: none;
  cursor: pointer;
  transition: all ease .3s; }
  .close-button img {
    width: 3.5rem;
    height: 3.5rem; }
  .close-button:hover {
    background: #06F297;
    transition: all ease .3s; }

.hamburger {
  padding: .2rem !important; }

.hamburger-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: .5rem !important; }

.common-img {
  height: auto;
  max-width: 100%; }

.full-width-img {
  height: auto;
  width: 100%; }

.map-img {
  max-width: 30rem; }

#map {
  width: 100%;
  height: 40rem; }

#status {
  display: none; }

.reveal {
  padding: 8rem 2rem;
  outline: none;
  border: none;
  width: 100rem;
  max-width: 100%; }
  @media print, screen and (min-width: 48em) {
    .reveal {
      padding: 8rem; } }

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none; }

/* viditelné zaostření pro klávesnici — bez něj se web nedá ovládat tabulátorem;
   myš ani dotyk obrys nevyvolají (:focus-visible) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
.btn:focus-visible,
.link:focus-visible {
  outline: 0.3rem solid #06F297;
  outline-offset: .3rem;
  border-radius: .2rem; }

.canvas--green a:focus-visible,
.canvas--green button:focus-visible,
.canvas--green [tabindex]:focus-visible {
  outline-color: #012641; }

.overflow-hidden {
  overflow: hidden; }

/* otevřený přehrávač videa: stránka pod ním neroluje */
html.overflow-hidden {
  overflow: hidden; }

.display-none {
  display: none !important; }

.hidden {
  opacity: 0;
  pointer-events: none; }

.anchor {
  position: absolute;
  top: -7rem;
  left: 0; }
  .anchor--sm {
    top: -6rem; }

/*---------------------------------------------------
               		Typography
---------------------------------------------------*/
.title-1 {
  font-size: 7rem;
  line-height: 1.1;
  font-weight: 400;
  text-transform: uppercase;
  font-family: Bulevar, sans-serif; }

.title-2 {
  font-size: 6rem;
  line-height: 1.1;
  font-weight: 400;
  text-transform: uppercase;
  font-family: Bulevar, sans-serif; }

.title-3 {
  font-size: 2.6rem;
  line-height: 1.2;
  font-weight: 600; }

.title-4 {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 600; }

@media print, screen and (min-width: 48em) {
  .title-1 {
    font-size: 10rem; }
  .title-2 {
    font-size: 9rem; }
  .title-3 {
    font-size: 3.2rem; }
  .title-4 {
    font-size: 2.2rem; } }

@media screen and (min-width: 75em) {
  .title-1 {
    font-size: 20rem; }
  .title-2 {
    font-size: 12rem; }
  .title-3 {
    font-size: 3.6rem; }
  .title-4 {
    font-size: 2.6rem; } }

/* menší stupeň .title-2 pro delší nadpisy sekcí (celé věty) */
.title-2--sm {
  font-size: 4.8rem; }
  @media print, screen and (min-width: 48em) {
    .title-2--sm {
      font-size: 7rem; } }
  @media screen and (min-width: 75em) {
    .title-2--sm {
      font-size: 8.6rem; } }

.text {
  color: white;
  font-size: 1.6rem;
  font-weight: 400; }
  @media print, screen and (min-width: 48em) {
    .text {
      font-size: 1.8rem; } }
  .text em {
    font-style: normal; }
  .text a {
    color: inherit;
    text-decoration: underline; }
    .text a:hover {
      text-decoration: none; }
  .text p {
    color: white;
    font-size: 1.8rem;
    font-weight: 500; }
    @media print, screen and (min-width: 48em) {
      .text p {
        font-size: 2rem; } }
  .text h2 {
    font-size: 3.2rem;
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: -2.5%;
    color: white;
    margin-bottom: .5rem; }
    @media print, screen and (min-width: 48em) {
      .text h2 {
        font-size: 3.8rem; } }
    @media screen and (min-width: 75em) {
      .text h2 {
        font-size: 4rem; } }
  .text h3 {
    font-size: 2.4rem;
    line-height: 1.2;
    font-weight: 600;
    color: white;
    margin-bottom: .5rem; }
    @media print, screen and (min-width: 48em) {
      .text h3 {
        font-size: 3.2rem; } }
    @media screen and (min-width: 75em) {
      .text h3 {
        font-size: 3rem; } }
  .text h4 {
    font-size: 2rem;
    line-height: 1.4;
    font-weight: 600;
    color: white;
    margin-bottom: .5rem; }
  .text p + p {
    margin-top: 1rem; }
  .text h2 + h2 {
    margin-top: 3rem; }
  .text h2 + p {
    margin-top: 1rem; }
  .text h3 + p {
    margin-top: 1rem; }
  .text h4 + p {
    margin-top: 1rem; }
  .text p + h2 {
    margin-top: 2rem; }
  .text p + h3 {
    margin-top: 2rem; }
  .text p + h4 {
    margin-top: 2rem; }
  .text ul {
    padding: 0 2rem 0 2.5rem;
    list-style-type: disc;
    text-align: left;
    font-size: 1.6rem;
    margin-top: 1rem; }
    @media print, screen and (min-width: 48em) {
      .text ul {
        font-size: 1.8rem; } }
  .text li {
    position: relative;
    margin-bottom: .5rem; }
  .text--lg {
    color: white;
    font-weight: 400;
    font-size: 1.7rem; }
    @media print, screen and (min-width: 64em) {
      .text--lg {
        font-size: 2.4rem; } }
    .text--lg p {
      color: white;
      font-weight: 400;
      font-size: 1.7rem; }
      @media print, screen and (min-width: 64em) {
        .text--lg p {
          font-size: 2.4rem; } }
  .text--sm {
    font-size: 1.6rem; }
    .text--sm p {
      font-size: 1.6rem; }
  .text--white * {
    color: white; }
  .text--white p {
    color: white; }

/* 
    utility classes
*/
.mt-1 {
  margin-top: 1rem; }

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

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

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

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

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

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

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

.ml-1 {
  margin-left: 1rem; }

.ml-2 {
  margin-left: 2rem; }

.ml-3 {
  margin-left: 3rem; }

.ml-4 {
  margin-left: 4rem; }

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

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

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

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

.uppercase {
  text-transform: uppercase; }

.text-left {
  text-align: left !important; }

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

.text-right {
  text-align: right !important; }

.hidden {
  display: none; }

.img {
  display: block;
  width: 100%;
  height: auto; }

/* obsah jen pro čtečky a vyhledávače — vizuálně skrytý, ale v přístupnostním stromu */
.sr-only {
  position: absolute;
  width: .1rem;
  height: .1rem;
  padding: 0;
  margin: -.1rem;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  clip: rect(0, 0, 0, 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%); }

/*---------------------------------------------------
                    Components
---------------------------------------------------*/
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0.2em 0.2em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  cursor: pointer;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 1; }

.hamburger-box {
  width: 2.5rem;
  height: 1.4rem;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.1rem; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 2.5rem;
    height: 0.2rem;
    background-color: currentColor;
    border-radius: 0.2rem;
    position: absolute;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -0.6rem; }
  .hamburger-inner::after {
    bottom: -0.6rem; }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.1s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.1s 0.14s ease, opacity 0.1s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.1s 0.14s ease, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease, opacity 0.1s 0.14s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    transition: bottom 0.1s ease, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*------------------------------------------
          Hlavička webu a navigace
  Ústí 2040: tmavá varianta hlavičky z spoluprousti.cz —
  logo SPOLU PRO ÚSTÍ vede na hlavní web, vedle něj značka
  „Ústí 2040", kotvy sekcí a CTA k formuláři.
--------------------------------------------*/
.header {
  width: 100%;
  height: 8rem;
  position: fixed;
  top: 0;
  z-index: 1000;
  padding: 0 2rem;
  box-sizing: border-box;
  color: white;
  transition: all ease .5s;
  /* nad zelenou sekcí (finální výzva) se všechno přepne do tmavé */
  /* levá část: logo hlavního webu | značka kampaně */ }
  @media screen and (min-width: 75em) {
    .header {
      padding: 0 3rem; } }
  .header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 15rem;
    background: linear-gradient(180deg, rgba(0, 26, 45, 0.9) 0%, rgba(0, 26, 45, 0) 100%);
    -webkit-mask: linear-gradient(white, white, transparent);
            mask: linear-gradient(white, white, transparent);
    -webkit-backdrop-filter: blur(0.5rem);
            backdrop-filter: blur(0.5rem);
    opacity: 0;
    pointer-events: none;
    transition: all ease .5s; }
  .header--scrolled::before {
    opacity: 1; }
  .header--green::before {
    background: linear-gradient(180deg, rgba(6, 242, 151, 0.9) 0%, rgba(6, 242, 151, 0) 100%); }
  .header--green .nav__link,
  .header--green .header__brand {
    color: #012641; }
  .header--green .header__brand-year {
    color: white; }
  .header--green .header__divider {
    background-color: rgba(1, 38, 65, 0.3); }
  .header--green .header__logo-img .dark {
    fill: #012641; }
  .header--green .header__logo-img .green {
    fill: white; }
  .header--green .hamburger-inner, .header--green .hamburger-inner::before, .header--green .hamburger-inner::after, .header--green .hamburger-text {
    color: #012641; }
  .header--green .nav__cta {
    background-color: #012641;
    color: white;
    /* šipka je tmavé SVG — na tmavém tlačítku ji přebarvíme na bílou */ }
    .header--green .nav__cta .nav__cta-arrow {
      -webkit-filter: brightness(0) invert(1);
              filter: brightness(0) invert(1); }
    .header--green .nav__cta:hover, .header--green .nav__cta:focus-visible {
      background-color: white;
      color: #012641; }
      .header--green .nav__cta:hover .nav__cta-arrow, .header--green .nav__cta:focus-visible .nav__cta-arrow {
        -webkit-filter: none;
                filter: none; }
  .header__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: inherit;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: auto; }
  .header__brandbox {
    position: relative;
    z-index: 999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%; }
  .header__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    transition: opacity ease .3s; }
    .header__logo:hover {
      opacity: .85; }
    .header__logo-img {
      display: block;
      width: 7.4rem;
      height: auto; }
      @media print, screen and (min-width: 48em) {
        .header__logo-img {
          width: 8.6rem; } }
      .header__logo-img .dark {
        fill: white;
        transition: all ease .5s; }
      .header__logo-img .dark--text {
        fill: #012641; }
      .header__logo-img .green {
        fill: #06F297;
        transition: all ease .5s; }
  .header__divider {
    display: block;
    width: .1rem;
    height: 3.6rem;
    margin: 0 1.4rem;
    background-color: rgba(255, 255, 255, 0.25);
    transition: background-color ease .5s; }
    @media print, screen and (min-width: 48em) {
      .header__divider {
        margin: 0 2rem; } }
  .header__brand {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    gap: .6rem;
    color: white;
    font-family: "Bulevar", sans-serif;
    font-size: 2.6rem;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color ease .5s; }
    @media print, screen and (min-width: 48em) {
      .header__brand {
        font-size: 3.2rem; } }
    .header__brand-year {
      color: #06F297;
      transition: color ease .5s; }
  .header__collapse {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1rem;
    /* tmavé mléčné sklo: prosvítá stránka pod menu, text zůstává čitelný */
    background-color: rgba(0, 26, 45, 0.82);
    /* měkká zelená záře od hamburgeru */
    background-image: radial-gradient(120% 80% at 88% 0%, rgba(6, 242, 151, 0.18) 0%, rgba(6, 242, 151, 0) 62%);
    -webkit-backdrop-filter: blur(2.4rem) saturate(160%);
    backdrop-filter: blur(2.4rem) saturate(160%);
    overflow-y: scroll;
    overflow-x: hidden;
    opacity: 0;
    /* zavřený panel nesmí zůstat v pořadí tabulátoru ani ve čtečce */
    visibility: hidden;
    /* menu se rozlévá z místa hamburgeru */
    -webkit-clip-path: circle(0% at 88% 4rem);
    clip-path: circle(0% at 88% 4rem);
    transition: opacity 0.35s ease, clip-path 0.6s cubic-bezier(0.65, 0, 0.25, 1), -webkit-clip-path 0.6s cubic-bezier(0.65, 0, 0.25, 1), visibility 0.6s; }
    @media screen and (min-width: 64em) {
      .header__collapse {
        height: inherit;
        padding: 0;
        position: static;
        opacity: 1;
        visibility: visible;
        z-index: 1;
        margin-left: auto;
        background-color: transparent;
        background-image: none;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        overflow: visible;
        -webkit-clip-path: none;
        clip-path: none;
        transition: none; } }
    @supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
      .header__collapse {
        background-color: rgba(0, 26, 45, 0.98); } }
    .header__collapse-helper {
      position: fixed;
      top: 8rem;
      left: 0;
      bottom: 0;
      width: 100%;
      overflow: auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding-bottom: 8rem; }
      @media screen and (min-width: 64em) {
        .header__collapse-helper {
          position: static;
          height: inherit;
          overflow: visible;
          display: block;
          padding-bottom: 0; } }
    .header__collapse--in {
      opacity: 1;
      visibility: visible;
      height: 100vh;
      -webkit-clip-path: circle(150% at 88% 4rem);
      clip-path: circle(150% at 88% 4rem); }

/* položky menu naskakují jedna po druhé — jen na mobilu */
@media screen and (max-width: 1023.98px) {
  .header__collapse .nav__item,
  .header__collapse .nav__cta {
    opacity: 0;
    -webkit-transform: translateY(2.5rem);
            transform: translateY(2.5rem);
    transition: opacity 0.4s ease, -webkit-transform 0.55s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: opacity 0.4s ease, transform 0.55s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: opacity 0.4s ease, transform 0.55s cubic-bezier(0.2, 0.8, 0.2, 1), -webkit-transform 0.55s cubic-bezier(0.2, 0.8, 0.2, 1); }
  .header__collapse--in .nav__item,
  .header__collapse--in .nav__cta {
    opacity: 1;
    -webkit-transform: none;
            transform: none; }
    .header__collapse--in .nav__item:nth-child(1),
    .header__collapse--in .nav__cta:nth-child(1) {
      transition-delay: 0.22s; }
    .header__collapse--in .nav__item:nth-child(2),
    .header__collapse--in .nav__cta:nth-child(2) {
      transition-delay: 0.29s; }
    .header__collapse--in .nav__item:nth-child(3),
    .header__collapse--in .nav__cta:nth-child(3) {
      transition-delay: 0.36s; }
    .header__collapse--in .nav__item:nth-child(4),
    .header__collapse--in .nav__cta:nth-child(4) {
      transition-delay: 0.43s; }
    .header__collapse--in .nav__item:nth-child(5),
    .header__collapse--in .nav__cta:nth-child(5) {
      transition-delay: 0.5s; }
    .header__collapse--in .nav__item:nth-child(6),
    .header__collapse--in .nav__cta:nth-child(6) {
      transition-delay: 0.57s; }
    .header__collapse--in .nav__item:nth-child(7),
    .header__collapse--in .nav__cta:nth-child(7) {
      transition-delay: 0.64s; }
    .header__collapse--in .nav__item:nth-child(8),
    .header__collapse--in .nav__cta:nth-child(8) {
      transition-delay: 0.71s; }
  .header__collapse--in .nav__cta {
    transition-delay: .6s; } }

@media screen and (max-width: 1023.98px) and (prefers-reduced-motion: reduce) {
  .header__collapse .nav__item,
  .header__collapse--in .nav__item,
  .header__collapse .nav__cta,
  .header__collapse--in .nav__cta {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    transition: none; }
  .header__collapse {
    transition: opacity .2s ease, visibility .2s;
    -webkit-clip-path: none;
    clip-path: none; } }

.hamburger, .hamburger-wrapper {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.hamburger:focus {
  outline: none; }

.hamburger-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  padding: .5em;
  padding-right: 0;
  -webkit-appearance: none !important;
  border: 0;
  background: none;
  font: inherit;
  color: inherit;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.5rem;
  margin: auto;
  text-decoration: none; }
  @media screen and (min-width: 64em) {
    .hamburger-wrapper {
      display: none; } }
  .hamburger-wrapper:hover, .hamburger-wrapper:active {
    text-decoration: none;
    color: inherit; }

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  background-color: currentColor !important; }

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after, .hamburger-text {
  color: white;
  transition: color .4s ease; }

/* nápis se zeleným podtahem, který se přetáhne přes celé slovo */
.hamburger-text {
  position: relative;
  z-index: 0;
  margin-right: 1.2rem;
  padding: .3rem .7rem .2rem;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.01rem;
  text-transform: uppercase;
  transition: color .3s ease; }
  .hamburger-text::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: #06F297;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right center;
            transform-origin: right center;
    transition: -webkit-transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1), -webkit-transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1); }

.hamburger-wrapper:hover .hamburger-text,
.hamburger-wrapper:focus-visible .hamburger-text,
.header__collapse--in ~ .hamburger-wrapper .hamburger-text {
  color: #012641; }
  .hamburger-wrapper:hover .hamburger-text::before,
  .hamburger-wrapper:focus-visible .hamburger-text::before,
  .header__collapse--in ~ .hamburger-wrapper .hamburger-text::before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left center;
            transform-origin: left center; }

.scrolling--disabled {
  overflow: hidden;
  position: fixed; }

.nav {
  padding: 0 0 2rem 0;
  margin-top: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  text-align: center;
  /* „Chci vědět víc" — na desktopu vpravo vedle kotev, v mobilním menu pod nimi */ }
  @media screen and (min-width: 64em) {
    .nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      height: inherit;
      padding: 0; } }
  .nav__list {
    margin-top: .5rem;
    padding-left: 0;
    text-align: center; }
    @media screen and (min-width: 64em) {
      .nav__list {
        margin: 0;
        height: inherit;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
  .nav__item {
    display: block;
    height: 100%;
    margin-top: 1.8rem;
    padding: 0 .25em .5em 0;
    position: relative;
    text-align: center; }
    .nav__item:first-of-type {
      margin-top: 1em; }
    @media screen and (min-width: 64em) {
      .nav__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        margin-top: 0;
        padding: 0 1.2rem; }
        .nav__item:first-of-type {
          margin-top: 0; } }
    @media screen and (min-width: 75em) {
      .nav__item {
        padding: 0 1.8rem; } }
  .nav__link {
    position: relative;
    z-index: 0;
    font-size: 2.8rem;
    color: white;
    line-height: 1;
    font-weight: 600;
    -webkit-font-feature-settings: "salt", "ss01", "ss07";
            font-feature-settings: "salt", "ss01", "ss07";
    transition: color ease .3s; }
    @media screen and (min-width: 64em) {
      .nav__link {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        height: inherit;
        margin: 0 .5rem;
        font-size: 1.5rem;
        text-transform: uppercase;
        letter-spacing: .1rem; } }
    .nav__link::before {
      content: '';
      position: absolute;
      top: 0;
      left: -1rem;
      bottom: 0;
      width: 0;
      height: 4rem;
      margin: auto;
      background-color: #06F297;
      z-index: -1;
      transition: all ease .3s; }
      @media screen and (min-width: 64em) {
        .nav__link::before {
          height: 3rem; } }
    .nav__link:hover, .nav__link:active, .nav__link--active {
      color: #012641; }
      .nav__link:hover::before, .nav__link:active::before, .nav__link--active::before {
        width: calc(100% + 2rem); }
  .nav__cta {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    margin-top: 4rem;
    padding: 1.4rem 2.2rem;
    background-color: #06F297;
    color: #012641;
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: .08rem;
    text-transform: uppercase;
    transition: background-color ease .3s, color ease .3s; }
    @media screen and (min-width: 64em) {
      .nav__cta {
        margin: 0 0 0 2rem;
        padding: 1.1rem 1.8rem;
        font-size: 1.4rem; } }
    .nav__cta:hover, .nav__cta:focus-visible {
      background-color: white;
      color: #012641; }
    .nav__cta-arrow {
      display: block;
      width: 1.4rem;
      height: auto; }

/* otevřené menu: hlavička drží vlastní tmavé barvy bez ohledu na sekci pod ní */
.header--menu-open::before {
  opacity: 0; }

.header--menu-open .nav__link,
.header--menu-open .header__brand {
  color: white; }

.header--menu-open .nav__link--active,
.header--menu-open .nav__link:hover {
  color: #012641; }

.header--menu-open .header__brand-year {
  color: #06F297; }

.header--menu-open .header__logo-img .dark {
  fill: white !important; }

.header--menu-open .header__logo-img .dark--text {
  fill: #012641 !important; }

.header--menu-open .header__logo-img .green {
  fill: #06F297 !important; }

.header--menu-open .hamburger-inner, .header--menu-open .hamburger-inner::before, .header--menu-open .hamburger-inner::after {
  color: white; }

.page__name {
  position: relative;
  margin-bottom: 3rem;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 1.8rem;
  letter-spacing: 6%;
  padding-left: 8rem; }
  @media print, screen and (min-width: 48em) {
    .page__name {
      font-size: 2.2rem;
      margin-bottom: 4rem; } }
  .page__name::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 6rem;
    height: .3rem;
    background-color: #06F297; }
  @media print, screen and (min-width: 48em) {
    .page__name--reverse {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      width: 100%;
      text-align: right;
      padding-right: 8rem;
      padding-left: 0; }
      .page__name--reverse::before {
        left: auto;
        right: 0; } }

.page__btns {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem 2rem; }
  .page__btns--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

/* Než se spustí JS, je obsah pásu obyčejný <div> uvnitř flex kontejneru s
   overflow: hidden. Bez zákazu zalomení se dlouhý text rozlije do několika
   řádků, pruh se roztáhne a po startu skriptu zase smrskne — proto nowrap už
   ve výchozím stavu: text se rovnou ořízne přesně tak, jak vypadá první
   snímek běžícího tickeru. */
.jsTicker > * {
  white-space: nowrap; }

.ticker {
  /* obsah pásu je blokový <div> + inline oddělovač — bez flexu by z nich vznikly
       dva řádky pod sebou a text by pak seděl v horní polovině pruhu */ }
  .ticker__track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    will-change: transform; }
  .ticker__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    white-space: nowrap; }
  .ticker__sep {
    display: inline-block;
    padding: 0 .3em; }

/*------------------------------------------
    Tlačítka — stejná stavba jako na spoluprousti.cz
    (text + čtvercový box se šipkou, zelená výplň přejede zleva),
    jen barevně obrácená pro tmavý podklad.
--------------------------------------------*/
.btn {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 0;
  border: 0;
  background: white;
  color: #012641;
  font-family: "Plus Jakarta Sans", sans-serif;
  cursor: pointer;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 1.3rem;
  line-height: 1.2;
  letter-spacing: 3%;
  text-align: left;
  transition: all ease .3s;
  /* ikona v boxu kreslená přes currentColor (play, šipka dolů…) */
  /* hlavní akce: zelená plocha, box tmavý */
  /* celé zelené, box oddělený jen linkou — tmavý box by na tmavém podkladu zmizel */
  /* vedlejší akce: průhledná s linkou */
  /* na zelené sekci */ }
  @media print, screen and (min-width: 48em) {
    .btn {
      font-size: 1.6rem; } }
  .btn:hover, .btn:focus-visible {
    color: #012641; }
    .btn:hover .btn-text::before, .btn:focus-visible .btn-text::before {
      width: 100%; }
    .btn:hover .btn-img, .btn:focus-visible .btn-img {
      -webkit-transform: translateX(0.3rem);
              transform: translateX(0.3rem); }
    .btn:hover .btn-img--down, .btn:focus-visible .btn-img--down {
      -webkit-transform: rotate(90deg) translateX(0.3rem);
              transform: rotate(90deg) translateX(0.3rem); }
  .btn-text {
    position: relative;
    padding: 1rem 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: 1; }
    .btn-text::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 0%;
      height: 100%;
      background-color: #06F297;
      z-index: -1;
      transition: all ease .5s; }
  .btn-box {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 5rem;
    height: 5rem;
    background-color: #06F297;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .btn-img {
    width: 1.8rem;
    height: auto;
    display: block;
    transition: -webkit-transform ease .3s;
    transition: transform ease .3s;
    transition: transform ease .3s, -webkit-transform ease .3s; }
    .btn-img--down {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg); }
  .btn-ico {
    display: block;
    width: 2rem;
    height: 2rem;
    color: #012641;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: square;
    stroke-linejoin: miter;
    transition: -webkit-transform ease .3s;
    transition: transform ease .3s;
    transition: transform ease .3s, -webkit-transform ease .3s; }
  .btn--green {
    background-color: #06F297; }
    .btn--green .btn-text::before {
      background-color: white; }
    .btn--green .btn-box {
      background-color: #06F297;
      box-shadow: inset 0.1rem 0 0 rgba(1, 38, 65, 0.25); }
  .btn--ghost {
    background-color: transparent;
    color: white;
    box-shadow: inset 0 0 0 0.2rem rgba(255, 255, 255, 0.35); }
    .btn--ghost:hover, .btn--ghost:focus-visible {
      box-shadow: inset 0 0 0 0.2rem #06F297; }
  .btn--dark {
    background-color: #012641;
    color: white; }
    .btn--dark .btn-box {
      background-color: white; }
  .canvas--green .btn:not(.btn--dark) .btn-box {
    background-color: #012641; }
  .btn:disabled {
    opacity: .6;
    cursor: wait; }

[class^="orejime-"] {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  vertical-align: baseline;
  cursor: default;
  float: none;
  width: auto;
  text-align: left;
  font-weight: 500; }

.orejime-Main,
.orejime-Modal {
  font-size: 1em;
  line-height: 1.5; }

.orejime-Button {
  border: 0;
  color: #fff;
  padding: 1rem 2rem;
  font-size: 1.2rem;
  margin-right: 1.5rem;
  text-transform: uppercase;
  cursor: pointer;
  margin-top: 1rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Button {
      margin-top: 0;
      font-size: 1.4rem;
      padding: 1.3rem 2.6rem; } }
  .orejime-Button[disabled] {
    opacity: 1; }

.orejime-Button--save,
.orejime-Button--accept {
  background: #06F297;
  color: #012641; }

.orejime-Button--decline {
  background: transparent;
  padding: 0;
  color: #012641; }

.orejime-Button--info {
  background: transparent;
  padding: 0;
  color: #012641; }

.orejime-Notice {
  background: white;
  position: fixed;
  z-index: 9;
  width: calc(100% - 4rem);
  max-width: 65rem;
  bottom: 2rem;
  right: 2rem;
  box-shadow: 0px 0px 50px 10px rgba(0, 0, 0, 0.1); }

.orejime-Notice--mandatory {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: none; }

.orejime-Notice--hidden {
  display: none !important; }

.orejime-Notice-body {
  padding: 2rem 2rem;
  width: 100%;
  max-width: 80rem;
  margin: auto; }
  @media print, screen and (min-width: 48em) {
    .orejime-Notice-body {
      padding: 3rem; } }

.orejime-Notice-logo {
  width: 20rem;
  height: auto;
  margin-bottom: 4rem;
  max-height: 8rem;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left center;
     object-position: left center; }

.orejime-Notice-title,
.orejime-Notice-description {
  color: #012641;
  margin-bottom: 1rem;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Notice-title,
    .orejime-Notice-description {
      font-size: 1.4rem;
      margin-bottom: 2rem; } }

.orejime-Notice-title {
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.3;
  margin-bottom: .5rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Notice-title {
      font-size: 2.2rem; } }

.orejime-Notice-purposes {
  color: #012641; }

.orejime-Notice-changes {
  color: #012641;
  margin-bottom: 0.5em;
  font-weight: 500; }

.orejime-Notice-privacyPolicyLink {
  text-decoration: underline;
  cursor: pointer; }
  .orejime-Notice-privacyPolicyLink, .orejime-Notice-privacyPolicyLink:hover {
    color: inherit; }
  .orejime-Notice-privacyPolicyLink:hover, .orejime-Notice-privacyPolicyLink:focus {
    text-decoration: none; }

.orejime-Notice-actions {
  display: block; }

.orejime-Notice-actionItem {
  display: inline-block; }

.orejime-Notice-learnMoreButton {
  display: inline-block; }

.orejimeHtml-WithModalOpen {
  height: 100%; }

.orejimeHtml-WithModalOpen body {
  position: fixed;
  overflow: hidden;
  height: 100%;
  width: 100%; }

.orejime-ModalOverlay,
.orejime-NoticeOverlay {
  z-index: 9999;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.orejime-ModalWrapper {
  z-index: 1001;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
  width: 640px;
  max-width: 100%;
  max-height: 100%;
  overflow: auto; }

.orejime-Modal {
  background: white;
  color: #012641;
  border-radius: 0px;
  box-shadow: none;
  max-height: 70rem;
  overflow: auto; }

.orejime-Modal-description {
  font-size: 1.2rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Modal-description {
      font-size: 1.4rem; } }

.orejime-Modal-header {
  padding: 3rem 3rem 0 3rem; }

.orejime-Modal-title {
  margin: 0;
  font-size: 2rem;
  display: block;
  font-weight: 500;
  padding-right: 20px;
  margin-bottom: .5rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Modal-title {
      font-size: 2.8rem; } }

.orejime-Modal-closeButton {
  border: none;
  background: none;
  color: inherit;
  position: absolute;
  top: 1em;
  right: 1em; }

.orejime-CloseIcon {
  stroke: currentColor;
  width: 12px;
  cursor: pointer; }

.orejime-Modal-body {
  padding: 3rem;
  padding-bottom: 16rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-Modal-body {
      padding-bottom: 12rem; } }

.orejime-Modal-footer {
  padding: 2rem 3rem;
  border-top: 1px solid #555;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: white; }

.orejime-Modal-privacyPolicyLink,
.orejime-Modal-poweredByLink {
  cursor: pointer;
  text-decoration: underline;
  color: inherit; }
  .orejime-Modal-privacyPolicyLink:hover, .orejime-Modal-privacyPolicyLink:focus, .orejime-Modal-privacyPolicyLink:active,
  .orejime-Modal-poweredByLink:hover,
  .orejime-Modal-poweredByLink:focus,
  .orejime-Modal-poweredByLink:active {
    color: inherit; }
  .orejime-Modal-privacyPolicyLink:hover, .orejime-Modal-privacyPolicyLink:focus,
  .orejime-Modal-poweredByLink:hover,
  .orejime-Modal-poweredByLink:focus {
    text-decoration: none; }

.orejime-Modal-poweredByLink {
  position: absolute;
  right: 1em;
  color: #aaa;
  font-size: 0.8em;
  padding: 6px 0; }
  .orejime-Modal-poweredByLink:hover, .orejime-Modal-poweredByLink:focus, .orejime-Modal-poweredByLink:active {
    color: #aaa; }

.orejime-AppList {
  display: block;
  padding: 0;
  margin: 0; }

.orejime-AppList-item {
  display: block;
  position: relative;
  line-height: 1.25;
  vertical-align: middle;
  padding-left: 8rem;
  min-height: 40px;
  margin-top: 2rem; }
  .orejime-AppList-item:first-child {
    margin-top: 0; }

.orejime-CategorizedAppList {
  list-style: none; }

.orejime-CategorizedAppList-item {
  margin-bottom: 4rem; }

.orejime-CategorizedAppList-title {
  font-size: 1.6rem;
  font-weight: 500; }
  @media print, screen and (min-width: 48em) {
    .orejime-CategorizedAppList-title {
      font-size: 1.8rem; } }

.orejime-CategorizedAppList-description {
  font-size: 1.2rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-CategorizedAppList-description {
      font-size: 1.4rem; } }

.orejime-CategorizedAppList-apps {
  margin-top: 1.5rem;
  margin-left: 0; }

.orejime-AppItem-title {
  font-weight: 500;
  cursor: pointer;
  font-size: 1.4rem; }
  @media print, screen and (min-width: 48em) {
    .orejime-AppItem-title {
      font-size: 1.6rem; } }

.orejime-AppItem-description {
  font-size: 1.4rem; }

.orejime-AppItem-purposes {
  font-size: 1.2rem;
  color: #aaa; }
  @media print, screen and (min-width: 48em) {
    .orejime-AppItem-purposes {
      font-size: 1.4rem; } }

.orejime-AppItem-optOut,
.orejime-AppItem-required {
  padding-left: 0.2em;
  font-size: 0.8em;
  color: #aaa; }

.orejime-AppItem-input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 50px;
  height: 30px; }

.orejime-AppItem-switch {
  position: absolute;
  left: 0;
  display: inline-block;
  width: 50px;
  height: 30px; }

.orejime-AppItem-slider {
  box-shadow: none;
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #aaa;
  transition: .4s;
  width: 50px;
  display: inline-block;
  border-radius: 0px;
  border: 2px solid transparent; }
  .orejime-AppItem-slider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
    border: 1px solid #555; }

.orejime-AppItem-switchLabel {
  position: absolute;
  width: 50px;
  top: 34px;
  overflow: ellipsis;
  font-size: 1.2rem;
  text-align: center;
  margin-top: .3rem; }

.orejime-AppItem-switch--disabled .orejime-AppItem-slider {
  cursor: default;
  opacity: 0.5; }

.orejime-AppItem-switch--disabled .orejime-AppItem-switchLabel {
  color: #aaa; }

.orejime-AppItem-input:focus + .orejime-AppItem-label .orejime-AppItem-slider {
  border-color: #fff;
  outline-offset: 2px; }

.orejime-AppItem-input:checked + .orejime-AppItem-label .orejime-AppItem-slider {
  background-color: #012641; }

.orejime-AppItem-input:checked + .orejime-AppItem-label .orejime-AppItem-slider:before {
  -webkit-transform: translateX(20px);
  transform: translateX(20px); }

.orejime-AppToggles {
  margin-bottom: 1em;
  display: block; }

.orejime-AppToggles-item {
  display: inline; }

.orejime-AppToggles-enableAll {
  border: 0.1rem solid #012641;
  background: #012641;
  color: #fff; }

.orejime-Notice-purposes {
  text-transform: lowercase; }

#orejime {
  pointer-events: none; }

.orejime-Notice-body, .orejime-ModalPortal {
  pointer-events: all; }

.cookies--small .orejime-Notice-logoContainer {
  display: none; }

.cookies--small .orejime-Notice {
  bottom: 1.5rem;
  right: 1.5rem;
  width: calc(100% - 3rem);
  max-width: 42rem;
  border-radius: 0rem;
  box-shadow: 0 1.2rem 3.6rem rgba(1, 38, 65, 0.18);
  -webkit-animation: cookiesNoticeIn 0.4s cubic-bezier(0.2, 0.8, 0.3, 1) both;
          animation: cookiesNoticeIn 0.4s cubic-bezier(0.2, 0.8, 0.3, 1) both; }

.cookies--small .orejime-Notice-body {
  max-width: none;
  padding: 1.8rem; }
  @media print, screen and (min-width: 48em) {
    .cookies--small .orejime-Notice-body {
      padding: 2rem 2.2rem; } }

.cookies--small .orejime-Notice-title {
  font-size: 1.5rem;
  line-height: 1.25;
  margin-bottom: .4rem; }
  @media print, screen and (min-width: 48em) {
    .cookies--small .orejime-Notice-title {
      font-size: 1.7rem; } }

.cookies--small .orejime-Notice-description {
  font-size: 1.2rem;
  line-height: 1.45;
  margin-bottom: 1.4rem; }
  @media print, screen and (min-width: 48em) {
    .cookies--small .orejime-Notice-description {
      font-size: 1.3rem;
      margin-bottom: 1.6rem; } }

.cookies--small .orejime-Notice-changes {
  font-size: 1.2rem;
  margin-bottom: 1rem; }

.cookies--small .orejime-Notice-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem 1.6rem;
  margin: 0;
  padding: 0;
  list-style: none; }

.cookies--small .orejime-Notice-actionItem {
  display: block;
  margin: 0; }

.cookies--small .orejime-Notice-actionItem--save {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 14rem;
          flex: 1 1 14rem; }

.cookies--small .orejime-Button {
  margin: 0;
  font-size: 1.3rem;
  padding: 0; }

.cookies--small .orejime-Notice-saveButton {
  padding: 1.1rem 2rem;
  border-radius: 0rem;
  font-weight: 600;
  letter-spacing: .05em;
  box-shadow: 0 0.3rem 1rem rgba(6, 242, 151, 0.35);
  transition: box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease; }
  .cookies--small .orejime-Notice-saveButton:hover, .cookies--small .orejime-Notice-saveButton:focus-visible {
    -webkit-transform: translateY(-0.2rem);
            transform: translateY(-0.2rem);
    box-shadow: 0 0.5rem 1.6rem rgba(6, 242, 151, 0.55); }

.cookies--small .orejime-Notice-learnMoreButton,
.cookies--small .orejime-Notice-declineButton {
  font-size: 1.2rem;
  text-transform: none;
  text-decoration: underline;
  opacity: .6;
  transition: opacity 0.3s ease; }
  .cookies--small .orejime-Notice-learnMoreButton:hover, .cookies--small .orejime-Notice-learnMoreButton:focus-visible,
  .cookies--small .orejime-Notice-declineButton:hover,
  .cookies--small .orejime-Notice-declineButton:focus-visible {
    opacity: 1; }

.cookies--big .orejime-Main {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.cookies--big .orejime-Notice {
  position: relative;
  width: 80rem;
  max-width: 95%;
  margin: auto;
  z-index: 2; }
  .cookies--big .orejime-Notice::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: -1; }

.cookies--big .orejime-Notice-body {
  position: relative;
  z-index: 9;
  background: white;
  border-radius: .0rem;
  padding: 2rem 4rem; }
  @media print, screen and (min-width: 48em) {
    .cookies--big .orejime-Notice-body {
      padding: 4rem 6rem; } }

@-webkit-keyframes cookiesNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(1.5rem);
            transform: translateY(1.5rem); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes cookiesNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(1.5rem);
            transform: translateY(1.5rem); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@media (prefers-reduced-motion: reduce) {
  .cookies--small .orejime-Notice {
    -webkit-animation: none;
            animation: none; } }

/*---------------------------------------------------
                    Zápatí webu
---------------------------------------------------*/
.footer {
  /* ---------- zelená výzva s propadajícím lístkem ---------- */
  /* volební lístek propadávající do urny — urnou je tmavá patička pod sekcí */
  /* ---------- tmavá patička ---------- */ }
  .footer__symbol {
    z-index: -2; }
  .footer__intro {
    padding-bottom: 0;
    overflow: hidden;
    color: #012641; }
  .footer__title {
    line-height: 1;
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 48em) {
      .footer__title {
        margin-bottom: 4rem; } }
  .footer__text {
    max-width: 92rem;
    /* Ústí 2040: .text barví nadpisy a odstavce bíle (tmavá stránka), na zelené výzvě musí být tmavé */ }
    .footer__text,
    .footer__text h1, .footer__text h2, .footer__text h3, .footer__text h4, .footer__text p, .footer__text li, .footer__text strong {
      color: #012641; }
    .footer__text h2 {
      /* na mobilu je odstavec dlouhý — menší stupeň se čte podstatně líp */
      font-size: 2.2rem;
      line-height: 1.4; }
      @media print, screen and (min-width: 48em) {
        .footer__text h2 {
          font-size: 3.2rem;
          line-height: 1.45; } }
      @media screen and (min-width: 75em) {
        .footer__text h2 {
          font-size: 3.6rem; } }
  .footer__vote {
    position: relative;
    margin: 4rem -2rem 0; }
    @media print, screen and (min-width: 48em) {
      .footer__vote {
        margin: 8rem 0 0; } }
    .footer__vote-stage {
      position: relative;
      height: 24rem;
      -webkit-clip-path: inset(-100rem 0 0 0);
      clip-path: inset(-100rem 0 0 0); }
      @media screen and (orientation: landscape) {
        .footer__vote-stage {
          height: 34rem; } }
      @media print, screen and (min-width: 48em) {
        .footer__vote-stage {
          height: 40rem; } }
      @media print, screen and (min-width: 64em) {
        .footer__vote-stage {
          height: 48rem; } }
      @media screen and (min-width: 75em) {
        .footer__vote-stage {
          height: 56rem; } }
    .footer__vote-paper {
      width: 58%;
      max-width: 70rem;
      margin: 0 auto;
      -webkit-transform: rotate(-2deg);
              transform: rotate(-2deg);
      will-change: transform; }
      @media print, screen and (min-width: 48em) {
        .footer__vote-paper {
          width: 78%;
          max-width: 76rem; } }
    .footer__vote-img {
      display: block;
      width: 100%;
      height: auto;
      aspect-ratio: 2481 / 3508; }
    .footer__vote-slot {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 95%;
      max-width: 120rem;
      height: 5rem;
      background-color: #001a2d;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      -webkit-clip-path: polygon(0 100%, 5% 0, 95% 0, 100% 100%);
      clip-path: polygon(0 100%, 5% 0, 95% 0, 100% 100%);
      z-index: -1; }
      @media print, screen and (min-width: 48em) {
        .footer__vote-slot {
          height: 9rem; } }
    .footer__vote-slit {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 70%;
      max-width: 90rem;
      height: 2rem;
      background-color: black;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      -webkit-clip-path: polygon(0 100%, 2% 0, 98% 0, 100% 100%);
      clip-path: polygon(0 100%, 2% 0, 98% 0, 100% 100%);
      z-index: -1; }
      @media print, screen and (min-width: 48em) {
        .footer__vote-slit {
          height: 4rem; } }
    .footer__vote-shadow {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 70%;
      max-width: 90rem;
      height: 1rem;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      -webkit-clip-path: polygon(0 100%, 2% 0, 98% 0, 100% 100%);
      clip-path: polygon(0 100%, 2% 0, 98% 0, 100% 100%);
      z-index: 1; }
      @media print, screen and (min-width: 48em) {
        .footer__vote-shadow {
          height: 2rem; } }
  .footer__main {
    padding-top: 6rem; }
    @media print, screen and (min-width: 48em) {
      .footer__main {
        padding-top: 8rem; } }
    @media screen and (min-width: 75em) {
      .footer__main {
        padding-top: 10rem; } }
    @media screen and (min-width: 85.375em) {
      .footer__main {
        padding-top: 12rem; } }
  .footer__brand {
    margin-bottom: 4rem; }
    @media print, screen and (min-width: 64em) {
      .footer__brand {
        margin-bottom: 0; } }
  .footer__logo-link {
    display: inline-block;
    line-height: 0; }
  .footer__logo {
    display: block;
    width: 18rem;
    max-width: 100%;
    height: auto; }
    @media print, screen and (min-width: 48em) {
      .footer__logo {
        width: 22rem; } }
  .footer__col {
    display: block; }
    .footer__col-title {
      position: relative;
      margin: 0 0 1.6rem;
      padding-bottom: 1.2rem;
      font-weight: 500;
      font-size: 1.4rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: #06F297;
      /* jemná linka místo tvrdého odsazení — drží sloupce opticky pohromadě */ }
      @media print, screen and (min-width: 48em) {
        .footer__col-title {
          font-size: 1.6rem;
          margin-bottom: 2rem; } }
      .footer__col-title::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        width: 3rem;
        height: .2rem;
        background-color: rgba(6, 242, 151, 0.4); }
    .footer__col-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
  .footer__link {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    /* pohodlný dotykový cíl i na mobilu (min. 44 px) */
    min-height: 4.4rem;
    padding: .2rem 0;
    color: white;
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.3;
    transition: color 0.3s ease; }
    .footer__link::before {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      left: -1rem;
      width: 0;
      height: 2.8rem;
      margin: auto;
      background-color: #06F297;
      z-index: -1;
      transition: width 0.3s ease; }
    .footer__link:hover, .footer__link:active, .footer__link--active {
      color: #012641; }
      .footer__link:hover::before, .footer__link:active::before, .footer__link--active::before {
        width: calc(100% + 2rem); }
    .footer__link-arrow {
      margin-left: .6rem;
      font-size: 1.3rem;
      line-height: 1;
      opacity: .55; }
  .footer__address {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 6rem;
    padding-top: 3rem;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.15); }
    @media print, screen and (min-width: 48em) {
      .footer__address {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end; } }
    .footer__address-text {
      /* světlejší než dřív — na tmavém podkladu musí text projít kontrastem */
      color: rgba(255, 255, 255, 0.65);
      font-size: 1.5rem;
      line-height: 1.5; }
      .footer__address-text p {
        color: rgba(255, 255, 255, 0.65);
        font-size: 1.5rem;
        line-height: 1.5; }
    .footer__address-meta {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin-top: 3rem; }
      @media print, screen and (min-width: 48em) {
        .footer__address-meta {
          margin-top: 0;
          margin-left: 3rem;
          -webkit-box-pack: end;
              -ms-flex-pack: end;
                  justify-content: flex-end;
          text-align: right; } }
    .footer__address-btn {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      min-height: 4.4rem;
      margin-left: 2rem;
      padding: 0;
      border: 0;
      background: none;
      font-family: inherit;
      text-align: left;
      text-decoration: underline;
      cursor: pointer;
      transition: color 0.3s ease; }
      .footer__address-btn:hover, .footer__address-btn:active {
        color: white; }

/* Ústí 2040: na Spolu Webu umisťuje symbol třída .jumbo__symbol--1 (_jumbo.scss),
   ta se tu neimportuje, proto stejné hodnoty přímo tady */
.footer__symbol {
  position: absolute;
  top: -20%;
  right: 0;
  width: 65%;
  height: auto;
  opacity: .7;
  pointer-events: none; }

.error {
  min-height: calc(100vh - 16rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .error__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: -1;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 18rem;
    font-weight: 600;
    color: #012641;
    opacity: .05; }
    @media print, screen and (min-width: 48em) {
      .error__bg {
        font-size: 30rem; } }
    @media screen and (min-width: 75em) {
      .error__bg {
        font-size: 60rem; } }
  .error__name {
    color: #A4A4A4;
    text-transform: uppercase;
    font-size: 1.6rem;
    font-weight: 600; }
    @media print, screen and (min-width: 48em) {
      .error__name {
        font-size: 1.8rem; } }
  .error__title {
    font-weight: 600;
    color: #012641;
    font-size: 4rem; }
    @media print, screen and (min-width: 48em) {
      .error__title {
        font-size: 6rem; } }
    @media screen and (min-width: 75em) {
      .error__title {
        font-size: 10rem; } }
  .error__text {
    text-align: center;
    color: white; }
    .error__text a {
      font-weight: 600;
      color: #012641;
      text-decoration: underline; }
      .error__text a:hover {
        text-decoration: none; }

/*---------------------------------------------------
        Zvýraznění textu (em uvnitř .text, .highlight)
---------------------------------------------------*/
/* celý text je podložený zelenou plochou s drobným paddingem do všech stran;
   podklad se kreslí gradientem, aby ho šlo při scrollu přetáhnout zleva doprava.
   <em> uvnitř .text zvýrazní redaktor z administrace, třída .highlight
   se dává ručně v šabloně (typicky na <span> uvnitř nadpisu). */
/* vodorovný přesah podkladu za text (na každé straně) */
.text em,
.highlight {
  font-style: normal;
  /* barva se přebírá, dokud podklad nedojede — na tmavé sekci by jinak text zmizel */
  color: inherit;
  /* Přesah se dělá VÝHRADNĚ paddingem — ten se s box-decoration-break: clone
       kopíruje na každý řádek. Záporný margin (dřívější řešení) Safari na iOS
       na druhý a další řádek nekopíruje, takže tam podklad začínal až u textu.
       Místo marginu se proto celé zvýraznění posune relativně doleva — posun
       platí pro všechny řádky stejně. Aby po posunu zbyl přesah i vpravo,
       je pravý padding dvojnásobný. */
  position: relative;
  left: -0.3em;
  padding: 0.12em 0.6em 0.12em 0.3em;
  /* obsahová plocha písma + padding nahoře i dole musí být nižší než řádkování,
       jinak se podbarvení sousedních řádků překrývá */
  line-height: 1.7;
  background-image: linear-gradient(#06F297, #06F297);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 0 100%;
  /* bez clone by podklad i padding dostal jen první a poslední řádek */
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  transition: background-size 1.1s cubic-bezier(0.35, 0.55, 0.35, 1), color 0.3s ease 0.35s; }
  .text em.highlight--in,
  .highlight.highlight--in {
    background-size: 100% 100%;
    color: #012641;
    line-height: 1.5; }

/* varianta pro velké nadpisy (.title-1, .title-2) — display písmo má vlastní
   těsné řádkování, takže se podklad sází s menším paddingem a řádkování se jen
   nepatrně rozvolní, aby se pruhy sousedních řádků nepřekrývaly.
   Řádkování je v obou stavech stejné, aby nadpis při dojetí podkladu neposkočil. */
.highlight--title {
  left: -0.14em;
  padding: 0.06em 0.28em 0.06em 0.14em;
  line-height: 1.3; }
  .highlight--title.highlight--in {
    line-height: 1.3; }

@media (prefers-reduced-motion: reduce) {
  .text em,
  .highlight {
    transition: none; } }

.with-cover-enter,
.with-cover-leave {
  transition: all 0.4s var(--easing); }

.with-cover-leave .transition {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%); }

.with-cover-leave-active .transition {
  transition: all 0.4s var(--easing); }

.with-cover-leave-to .transition {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.with-cover-leave .content {
  margin-top: 0; }

.with-cover-leave-active .content {
  transition: all 0.4s var(--easing); }

.with-cover-enter .transition {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.with-cover-enter .content {
  margin-top: -4rem;
  opacity: 0; }

.with-cover-leave-to .content {
  margin-top: 4rem;
  opacity: 0;
  transition: all 0.4s var(--easing); }

.with-cover-enter-active .content,
.with-cover-enter-active .transition {
  transition: all 0.4s var(--easing); }

.with-cover-enter-to .transition {
  -webkit-transform: translateY(100%);
          transform: translateY(100%); }

.with-cover-enter-to .content {
  margin-top: 0; }

:root {
  --easing: cubic-bezier(0.5, 0.7, 0.4, 1)
; }

.content {
  transition: all .4s ease;
  opacity: 1;
  /* nakloněný pás priorit a bubliny se zdroji vyčnívají o pár pixelů za okno;
       clip (na rozdíl od hidden) nedělá scroll kontejner, takže position: sticky
       uvnitř stránek dál funguje */
  overflow-x: clip; }

.transition {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  z-index: 1; }

.transition__logo {
  width: 15rem;
  height: auto; }
  @media print, screen and (min-width: 48em) {
    .transition__logo {
      width: 20rem; } }

/*---------------------------------------------------
                    Ústí 2040
    (komponenty spoluprousti.cz pro program, tým, hry
     a demolice se tu nepoužívají, proto nejsou v importu)
---------------------------------------------------*/
/*---------------------------------------------------
        Ústí 2040 — společné prvky stránky
        (animace při scrollu, dějství, perex, zdroje,
         fotky, zelený akcent, karty, pás s heslem)
---------------------------------------------------*/
/* atribut hidden musí vyhrát i nad display: flex v komponentách */
[hidden] {
  display: none !important; }

.sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden; }

/* ---------------------------------------------------- vyjíždění při scrollu
   Třídu .has-appear nastaví skript v <head> jen tam, kde animace dávají smysl
   (IntersectionObserver a žádné prefers-reduced-motion). Easing i délka jsou
   stejné jako u naskakujících položek menu na spoluprousti.cz. */
.has-appear .appear {
  opacity: 0;
  -webkit-transform: translate3d(0, 3rem, 0);
          transform: translate3d(0, 3rem, 0);
  transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), -webkit-transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1);
  transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1);
  transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1), -webkit-transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1); }
  .has-appear .appear--d1 {
    transition-delay: .08s; }
  .has-appear .appear--d2 {
    transition-delay: .16s; }
  .has-appear .appear--d3 {
    transition-delay: .24s; }
  .has-appear .appear.appear--in {
    opacity: 1;
    -webkit-transform: none;
            transform: none; }

/* ---------------------------------------------------- dějství příběhu */
.act {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  margin-bottom: 4rem; }
  @media print, screen and (min-width: 48em) {
    .act {
      margin-bottom: 6rem; } }
  .act__num {
    font-family: "Bulevar", sans-serif;
    font-size: 5.6rem;
    line-height: .8;
    color: transparent;
    -webkit-text-stroke: 0.1rem #06F297; }
    @media print, screen and (min-width: 48em) {
      .act__num {
        font-size: 7.2rem; } }
  .act__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.6rem;
    color: #06F297;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase; }
    .act__label::before {
      content: '';
      display: block;
      width: 4rem;
      height: .2rem;
      background-color: #06F297; }

/* ---------------------------------------------------- perex sekce */
.lead {
  max-width: 82rem;
  margin-top: 2rem;
  font-size: 1.8rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.8); }
  @media print, screen and (min-width: 48em) {
    .lead {
      margin-top: 3rem;
      font-size: 2.2rem; } }
  @media print, screen and (min-width: 48em) {
    .lead--sm {
      font-size: 1.9rem; } }
  .lead + .lead {
    margin-top: 1.4rem; }

/* ---------------------------------------------------- odkaz se šipkou */
.arrow-link {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .6rem;
  min-height: 4.4rem;
  color: #06F297;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: color ease 0.3s; }
  .arrow-link::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: .8rem;
    height: .2rem;
    background-color: currentColor;
    opacity: .4;
    -webkit-transform-origin: left center;
            transform-origin: left center;
    transition: opacity ease 0.3s; }
  .arrow-link:hover, .arrow-link:focus-visible {
    color: white; }
    .arrow-link:hover::after, .arrow-link:focus-visible::after {
      opacity: 1; }

/* ---------------------------------------------------- ikonka „i" se zdrojem
   (převzato z úvodní stránky spoluprousti.cz, přebarveno na tmavý podklad) */
.source {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2.2rem;
  height: 2.2rem;
  margin-left: .6rem;
  vertical-align: .2rem;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.16);
  color: white;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color ease 0.3s, color ease 0.3s; }
  .source:hover, .source:focus-visible {
    background-color: #06F297;
    color: #012641; }
  .source__tip {
    position: absolute;
    bottom: calc(100% + 1rem);
    right: 0;
    z-index: 5;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 24rem;
    padding: .9rem 1.2rem;
    background-color: white;
    color: #012641;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.4;
    text-align: left;
    text-transform: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity ease 0.3s, visibility ease 0.3s; }
    @media print, screen and (min-width: 48em) {
      .source__tip {
        right: auto;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
    .source__tip::after {
      content: '';
      position: absolute;
      top: 100%;
      right: .6rem;
      width: 1rem;
      height: 1rem;
      margin: -.5rem 0 0;
      background-color: white;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media print, screen and (min-width: 48em) {
        .source__tip::after {
          right: auto;
          left: 50%;
          margin: -.5rem 0 0 -.5rem; } }
  .source:hover .source__tip,
  .source:focus-visible .source__tip {
    opacity: 1;
    visibility: visible; }

/* ---------------------------------------------------- fotka / video
   Obrázek, který na serveru ještě není, initMedia() jen skryje — zůstane plocha v barvě rámečku. */
.media {
  position: relative;
  overflow: hidden;
  background-color: #0a3658; }
  .media > img,
  .media > video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .media--missing > img {
    visibility: hidden; }

/* zelené zvýraznění části nadpisu nebo věty (bez podbarvení) */
.accent {
  color: #06F297; }

/* ---------------------------------------------------- karta s ikonou */
.card {
  height: calc(100% - 2rem);
  margin-top: 2rem;
  padding: 2.6rem 2.2rem 3rem;
  background-color: rgba(255, 255, 255, 0.05);
  border-top: 0.3rem solid #06F297; }
  @media print, screen and (min-width: 64em) {
    .card {
      height: 100%;
      margin-top: 3rem;
      height: calc(100% - 3rem);
      padding: 3.2rem 3rem 3.6rem; } }
  .card__ico {
    display: block;
    width: 4rem;
    height: 4rem;
    margin-bottom: 2rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: square;
    stroke-linejoin: miter; }
  .card__title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .card__title {
        font-size: 2.6rem; } }
  .card__stat {
    margin-top: 1.4rem;
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.3; }
    .card__stat-number {
      margin-right: .4rem;
      font-family: "Bulevar", sans-serif;
      font-size: 4.6rem;
      font-weight: 400;
      line-height: 1;
      color: #06F297; }
      @media print, screen and (min-width: 48em) {
        .card__stat-number {
          font-size: 5.6rem; } }
  .card__text {
    margin-top: 1.4rem;
    font-size: 1.7rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .card__text {
        font-size: 1.8rem; } }

/* ---------------------------------------------------- srovnání dvou hodnot (mzdy) */
.bars {
  margin-top: 2rem; }
  .bars__row {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr auto;
        grid-template-columns: 1fr auto;
    gap: .6rem 1rem; }
    .bars__row + .bars__row {
      margin-top: 1.4rem; }
  .bars__label {
    font-size: 1.4rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7); }
  .bars__value {
    font-size: 1.5rem;
    font-weight: 700; }
  .bars__track {
    grid-column: 1 / -1;
    height: 1rem;
    background-color: rgba(255, 255, 255, 0.1); }
  .bars__fill {
    display: block;
    height: 100%;
    -webkit-transform-origin: left center;
            transform-origin: left center;
    transition: -webkit-transform 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.4s;
    transition: transform 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.4s;
    transition: transform 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.4s, -webkit-transform 1.2s cubic-bezier(0.65, 0, 0.35, 1) 0.4s;
    /* poměr skutečných hodnot: 45 482 / 50 282 — osa začíná na nule, nic se nepřikrášluje */ }
    .bars__fill--kraj {
      width: 90.45%;
      background-color: #06F297; }
    .bars__fill--cr {
      width: 100%;
      background-color: white; }

.has-appear .appear:not(.appear--in) .bars__fill {
  -webkit-transform: scaleX(0);
          transform: scaleX(0); }

/* ---------------------------------------------------- menší dlaždice (pravidla, fond) */
.feature {
  height: calc(100% - 2rem);
  margin-top: 2rem;
  padding: 2.6rem 2.2rem 3rem;
  background-color: rgba(255, 255, 255, 0.05);
  border-top: 0.3rem solid #06F297; }
  @media print, screen and (min-width: 64em) {
    .feature {
      height: calc(100% - 3rem);
      margin-top: 3rem;
      padding: 3rem 3rem 3.4rem; } }
  .feature__ico {
    display: block;
    width: 4rem;
    height: 4rem;
    margin-bottom: 2rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: square;
    stroke-linejoin: miter; }
  .feature__kicker {
    color: #06F297;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase; }
  .feature__title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .feature__title {
        font-size: 2.4rem; } }
  .feature__text {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .feature__text {
        font-size: 1.7rem; } }
    .feature__text--lg {
      margin-top: 1.4rem;
      font-size: 2rem;
      font-weight: 600;
      line-height: 1.35;
      color: white; }
      @media print, screen and (min-width: 48em) {
        .feature__text--lg {
          font-size: 2.4rem; } }

/* ---------------------------------------------------- nakloněný zelený pás s heslem
   (stejný jako pás priorit pod fotkou lídra na spoluprousti.cz) */
.ticker-band {
  position: relative;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  overflow: hidden;
  margin: -2rem 0 0;
  padding: .6rem 0;
  background-color: #06F297;
  color: #012641;
  font-family: "Bulevar", sans-serif;
  font-size: 3.2rem;
  line-height: 1;
  text-transform: uppercase;
  -webkit-transform: rotate(-2deg);
          transform: rotate(-2deg); }
  @media print, screen and (min-width: 48em) {
    .ticker-band {
      margin-top: -3rem;
      padding: .7rem 0;
      font-size: 4.2rem; } }
  @media print, screen and (min-width: 64em) {
    .ticker-band {
      margin-top: -4rem;
      padding: .8rem 0;
      font-size: 5rem; } }
  .ticker-band .ticker__sep {
    padding: 0 3rem; }
    @media print, screen and (min-width: 48em) {
      .ticker-band .ticker__sep {
        padding: 0 6rem; } }

/*---------------------------------------------------
        Formuláře na tmavém podkladu
        (stavba polí a souhlasu převzatá z „Zapojte se" na spoluprousti.cz)
---------------------------------------------------*/
.form__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  margin-bottom: 2rem; }
  @media print, screen and (min-width: 48em) {
    .form__row {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .form__row .form__field + .form__field {
    margin-top: 0; }

.form__field {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
  min-width: 0; }
  .form__field + .form__field {
    margin-top: 2rem; }

.form__label {
  display: block;
  margin-bottom: .7rem;
  color: rgba(255, 255, 255, 0.6);
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase; }

.form__req {
  color: #06F297; }

.form__opt {
  margin-left: .6rem;
  color: rgba(255, 255, 255, 0.4);
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none; }

.form__control {
  width: 100%;
  min-height: 5rem;
  padding: 1.2rem 1.4rem;
  border: none;
  border-bottom: 0.2rem solid rgba(255, 255, 255, 0.25);
  border-radius: 0;
  background-color: rgba(255, 255, 255, 0.06);
  color: white;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1.6rem;
  transition: border-color ease 0.3s, background-color ease 0.3s; }
  .form__control::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.35); }
  .form__control:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.35); }
  .form__control::placeholder {
    color: rgba(255, 255, 255, 0.35); }
  .form__control:focus {
    border-bottom-color: #06F297;
    background-color: rgba(255, 255, 255, 0.1); }
  .form__control--area {
    min-height: 12rem;
    resize: vertical; }
  .form__control--select {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    padding-right: 4rem;
    background-image: linear-gradient(45deg, transparent 50%, white 50%), linear-gradient(135deg, white 50%, transparent 50%);
    background-position: calc(100% - 2rem) 50%, calc(100% - 1.4rem) 50%;
    background-size: .6rem .6rem, .6rem .6rem;
    background-repeat: no-repeat;
    cursor: pointer; }
    .form__control--select option {
      color: #012641; }
  .form__control.is-invalid {
    border-bottom-color: #ff9aa7;
    background-color: rgba(255, 154, 167, 0.08); }

.form__consent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.2rem;
  margin-top: 2.6rem;
  cursor: pointer; }
  .form__consent-input {
    position: absolute;
    width: .1rem;
    height: .1rem;
    opacity: 0; }
  .form__consent-box {
    position: relative;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 2.2rem;
    height: 2.2rem;
    margin-top: .1rem;
    border: 0.2rem solid rgba(255, 255, 255, 0.4);
    transition: all ease 0.3s; }
    .form__consent-box::after {
      content: '';
      position: absolute;
      top: .2rem;
      left: .6rem;
      width: .5rem;
      height: 1rem;
      border: solid #012641;
      border-width: 0 .2rem .2rem 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      opacity: 0;
      transition: opacity ease 0.1s; }
  .form__consent-text {
    font-size: 1.4rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.7); }
  .form__consent-input:checked ~ .form__consent-box {
    border-color: #06F297;
    background-color: #06F297; }
    .form__consent-input:checked ~ .form__consent-box::after {
      opacity: 1; }
  .form__consent-input:focus-visible ~ .form__consent-box {
    box-shadow: 0 0 0 0.3rem rgba(6, 242, 151, 0.6); }
  .form__consent.is-invalid .form__consent-box {
    border-color: #ff9aa7; }

.form__consent-note {
  margin: .8rem 0 0 3.4rem;
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.5); }
  .form__consent-note a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: underline; }
    .form__consent-note a:hover {
      color: #06F297; }

.form__validation {
  margin-top: 2rem;
  padding: 1.2rem 1.6rem;
  border-left: 0.3rem solid #ff9aa7;
  background-color: rgba(255, 154, 167, 0.08);
  color: #ff9aa7;
  font-size: 1.5rem;
  font-weight: 600; }

.form__submit {
  margin-top: 3rem; }

.form__success {
  padding: 3rem 2.4rem;
  border-left: 0.4rem solid #06F297;
  background-color: rgba(6, 242, 151, 0.08);
  outline: none; }
  .form__success-title {
    font-family: "Bulevar", sans-serif;
    font-size: 4rem;
    line-height: 1;
    color: #06F297;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .form__success-title {
        font-size: 5rem; } }
  .form__success-text {
    margin-top: 1rem;
    font-size: 1.7rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.85); }

/*---------------------------------------------------
        1. Hero — video, hlavní sdělení, CTA
---------------------------------------------------*/
.hero {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  min-height: 100vh;
  min-height: 100svh;
  padding: 14rem 2rem 12rem;
  overflow: hidden;
  background-color: #001a2d;
  /* ztmavení kvůli čitelnosti textu nad jakýmkoli záběrem */
  /* nadpis od „medium" vždy na jednom řádku — stupně písma jsou spočítané tak,
       aby se věta vešla do šířky gridu; na mobilu se normálně zalomí */
  /* tři body pod nadpisem — každý na vlastním řádku se zelenou ikonou */
  /* vypínač tiché smyčky na pozadí */ }
  @media print, screen and (min-width: 48em) {
    .hero {
      padding: 16rem 0 14rem; } }
  @media print, screen and (min-width: 64em) {
    .hero {
      padding-bottom: 16rem; } }
  .hero__media {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #001a2d; }
  .hero__loop {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .hero__shade {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(0deg, rgba(0, 26, 45, 0.9) 0%, rgba(0, 26, 45, 0) 55%), linear-gradient(90deg, rgba(0, 26, 45, 0.85) 0%, rgba(0, 26, 45, 0.45) 50%, rgba(0, 26, 45, 0.1) 100%); }
  .hero__row {
    position: relative;
    z-index: 2;
    width: 100%; }
  .hero__kicker {
    display: inline-block;
    margin-bottom: 2rem;
    padding: .6rem 1.1rem .3rem;
    background-color: #06F297;
    color: #012641;
    font-family: "Bulevar", sans-serif;
    font-size: 3rem;
    line-height: 1;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .hero__kicker {
        font-size: 3.8rem; } }
  .hero__title {
    font-family: "Bulevar", sans-serif;
    font-weight: 400;
    font-size: 6.4rem;
    line-height: .95;
    text-transform: uppercase; }
    @media screen and (orientation: landscape) {
      .hero__title {
        font-size: 7.2rem; } }
    @media print, screen and (min-width: 48em) {
      .hero__title {
        font-size: 7.2rem;
        white-space: nowrap; } }
    @media print, screen and (min-width: 64em) {
      .hero__title {
        font-size: 9.6rem; } }
    @media screen and (min-width: 75em) {
      .hero__title {
        font-size: 11.6rem; } }
    @media screen and (min-width: 85.375em) {
      .hero__title {
        font-size: 13.6rem; } }
    @media screen and (min-width: 100em) {
      .hero__title {
        font-size: 16rem; } }
  .hero__points {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.2rem;
    margin-top: 3rem;
    padding: 0;
    list-style: none; }
    @media print, screen and (min-width: 48em) {
      .hero__points {
        gap: 1.4rem;
        margin-top: 4rem; } }
  .hero__point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.6rem; }
    .hero__point-box {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 4.4rem;
      height: 4.4rem;
      background-color: #06F297; }
      @media print, screen and (min-width: 48em) {
        .hero__point-box {
          width: 5.2rem;
          height: 5.2rem; } }
    .hero__point-ico {
      display: block;
      width: 2.4rem;
      height: 2.4rem;
      color: #012641;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: square;
      stroke-linejoin: miter; }
      @media print, screen and (min-width: 48em) {
        .hero__point-ico {
          width: 2.8rem;
          height: 2.8rem; } }
    .hero__point-text {
      font-size: 2.1rem;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: -.01em;
      text-shadow: 0 0.2rem 2rem rgba(0, 26, 45, 0.6); }
      @media print, screen and (min-width: 48em) {
        .hero__point-text {
          font-size: 2.8rem; } }
      @media screen and (min-width: 75em) {
        .hero__point-text {
          font-size: 3.2rem; } }
  .hero__btns {
    margin-top: 4rem; }
  .hero__toggle {
    position: absolute;
    z-index: 2;
    right: 2rem;
    bottom: 5.6rem;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: .8rem;
    min-height: 4.4rem;
    padding: 0 1.4rem;
    border: 0.1rem solid rgba(255, 255, 255, 0.3);
    background-color: rgba(0, 26, 45, 0.5);
    color: white;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color ease 0.3s; }
    @media print, screen and (min-width: 48em) {
      .hero__toggle {
        right: 3rem;
        bottom: 7rem; } }
    .hero__toggle:hover {
      border-color: #06F297; }
    .hero__toggle-ico {
      display: block;
      width: 1.2rem;
      height: 1.2rem; }
      .hero__toggle-ico--play {
        display: none; }
    .hero__toggle.is-paused .hero__toggle-ico--pause {
      display: none; }
    .hero__toggle.is-paused .hero__toggle-ico--play {
      display: block; }
  .hero__scroll {
    position: absolute;
    z-index: 2;
    left: 50%;
    bottom: 5rem;
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    /* drží se u spodní hrany, aby se nepřekrýval s tlačítky (hero__btns) */ }
    @media print, screen and (min-width: 48em) {
      .hero__scroll {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        bottom: 3rem; } }
    .hero__scroll-line {
      position: relative;
      width: .2rem;
      height: 5rem;
      overflow: hidden;
      background-color: rgba(255, 255, 255, 0.2); }
      .hero__scroll-line::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 40%;
        background-color: #06F297;
        -webkit-animation: heroScroll 1.8s cubic-bezier(0.65, 0, 0.35, 1) infinite;
                animation: heroScroll 1.8s cubic-bezier(0.65, 0, 0.35, 1) infinite; }
    .hero__scroll:hover {
      color: #06F297; }

@-webkit-keyframes heroScroll {
  0% {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(250%);
            transform: translateY(250%); } }

@keyframes heroScroll {
  0% {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(250%);
            transform: translateY(250%); } }

@media (prefers-reduced-motion: reduce) {
  .hero__scroll-line::after {
    -webkit-animation: none;
            animation: none; } }

/*---------------------------------------------------
        2. Diagnóza (#proc) a 3. Pro celé Ústí (#pro-vas)
---------------------------------------------------*/
.diag {
  /* sekce hned pod nakloněným pásem potřebuje nahoře víc místa */
  padding-top: 8rem; }
  @media print, screen and (min-width: 48em) {
    .diag {
      padding-top: 12rem; } }
  .diag__big {
    margin-top: 4rem; }
    @media print, screen and (min-width: 64em) {
      .diag__big {
        margin-top: 0;
        text-align: right; } }
    .diag__big-number {
      display: inline-block;
      font-family: "Bulevar", sans-serif;
      font-size: 11rem;
      line-height: .8;
      color: #06F297;
      white-space: nowrap; }
      @media screen and (orientation: landscape) {
        .diag__big-number {
          font-size: 15rem; } }
      @media screen and (min-width: 75em) {
        .diag__big-number {
          font-size: 20rem; } }
      @media screen and (min-width: 85.375em) {
        .diag__big-number {
          font-size: 24rem; } }
    .diag__big-text {
      margin-top: 1.6rem;
      font-size: 2rem;
      font-weight: 600;
      line-height: 1.3; }
      @media print, screen and (min-width: 48em) {
        .diag__big-text {
          font-size: 2.6rem; } }
      @media print, screen and (min-width: 64em) {
        .diag__big-text {
          max-width: 44rem;
          margin-left: auto; } }
  .diag__cards {
    margin-top: 3rem; }
    @media print, screen and (min-width: 48em) {
      .diag__cards {
        margin-top: 5rem; } }

/* ---------------------------------------------------- 3. Pro celé Ústí (#pro-vas)
   Řetězec kroků je sdílená komponenta .process (_centrum.scss), persony jsou v _provas.scss. */
.dopad__cols {
  margin-top: 4rem; }
  @media print, screen and (min-width: 64em) {
    .dopad__cols {
      margin-top: 7rem; } }

@media print, screen and (min-width: 64em) {
  .dopad__text {
    padding-right: 3rem; } }

.dopad__box {
  height: calc(100% - 2rem);
  margin-top: 2rem;
  padding: 3rem 2.4rem 3.4rem;
  background-color: #06F297;
  color: #012641; }
  @media print, screen and (min-width: 48em) {
    .dopad__box {
      padding: 4.4rem 4rem 4.8rem; } }
  @media print, screen and (min-width: 64em) {
    .dopad__box {
      margin-top: 0;
      height: 100%; } }

.dopad__title {
  margin-bottom: 2.4rem;
  font-family: "Bulevar", sans-serif;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase; }
  @media print, screen and (min-width: 48em) {
    .dopad__title {
      font-size: 6.4rem; } }

.dopad__item {
  position: relative;
  padding: 1.5rem 0 1.5rem 4.4rem;
  border-top: 0.1rem solid rgba(1, 38, 65, 0.2);
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
  /* čtvereček s fajfkou */ }
  @media print, screen and (min-width: 48em) {
    .dopad__item {
      font-size: 2.2rem; } }
  .dopad__item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 1.5rem;
    width: 2.6rem;
    height: 2.6rem;
    border: 0.2rem solid #012641;
    background-color: #012641; }
    @media print, screen and (min-width: 48em) {
      .dopad__item::before {
        top: 1.7rem; } }
  .dopad__item::after {
    content: '';
    position: absolute;
    left: .95rem;
    top: 2rem;
    width: .7rem;
    height: 1.2rem;
    border: solid #06F297;
    border-width: 0 .2rem .2rem 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
    @media print, screen and (min-width: 48em) {
      .dopad__item::after {
        top: 2.2rem; } }

.dopad__subtitle {
  margin: 8rem 0 1rem;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em; }
  @media print, screen and (min-width: 48em) {
    .dopad__subtitle {
      margin-top: 10rem;
      font-size: 3.6rem; } }

.dopad__point {
  margin-top: 8rem;
  margin-bottom: 2.4rem; }
  @media print, screen and (min-width: 48em) {
    .dopad__point {
      margin-top: 11rem; } }

/* verdikt pod kartami: pojmenování problému jednou větou */
.verdict {
  position: relative;
  margin-top: 5rem;
  padding-left: 2.4rem;
  border-left: 0.4rem solid #06F297; }
  @media print, screen and (min-width: 48em) {
    .verdict {
      margin-top: 7rem;
      padding-left: 4rem; } }
  .verdict__label {
    margin-bottom: 1.2rem;
    color: #06F297;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase; }
  .verdict__text {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.02em;
    color: rgba(255, 255, 255, 0.85); }
    @media print, screen and (min-width: 48em) {
      .verdict__text {
        font-size: 3.4rem; } }
    @media screen and (min-width: 75em) {
      .verdict__text {
        font-size: 4rem; } }
    .verdict__text strong {
      color: white;
      font-weight: 800; }

/*---------------------------------------------------
        4. Plán ve dvou etapách (#plan) a 8. Garant vize (#garant)
---------------------------------------------------*/
/* tlačítko s PDF koncepcí pod osou */
.cesta__pdf {
  margin-top: 5rem; }
  @media print, screen and (min-width: 64em) {
    .cesta__pdf {
      margin-top: 7rem; } }

/* osa: na mobilu svislá, od large vodorovná; zelená linka se dokreslí při scrollu */
.timeline {
  max-width: 160rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: .5rem;
  padding-right: .5rem;
  position: relative;
  list-style: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  margin-top: 5rem; }
  @media print, screen and (min-width: 48em) {
    .timeline {
      padding-left: 3rem;
      padding-right: 3rem; } }
  @media print, screen and (min-width: 64em) {
    .timeline {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr);
      gap: 0 6rem;
      margin-top: 8rem; } }
  .timeline::before, .timeline::after {
    content: '';
    position: absolute;
    top: 1rem;
    bottom: 4rem;
    left: calc(.5rem + 1.2rem - .1rem);
    width: .2rem;
    background-color: rgba(255, 255, 255, 0.15); }
    @media print, screen and (min-width: 48em) {
      .timeline::before, .timeline::after {
        left: calc(3rem + 1.2rem - .1rem); } }
    @media print, screen and (min-width: 64em) {
      .timeline::before, .timeline::after {
        top: calc(1.2rem - .1rem);
        bottom: auto;
        left: 3rem;
        right: 3rem;
        width: auto;
        height: .2rem; } }
  .timeline::after {
    background-color: #06F297;
    -webkit-transform-origin: center top;
            transform-origin: center top;
    transition: -webkit-transform 1.6s cubic-bezier(0.65, 0, 0.35, 1) 0.2s;
    transition: transform 1.6s cubic-bezier(0.65, 0, 0.35, 1) 0.2s;
    transition: transform 1.6s cubic-bezier(0.65, 0, 0.35, 1) 0.2s, -webkit-transform 1.6s cubic-bezier(0.65, 0, 0.35, 1) 0.2s; }
    @media print, screen and (min-width: 64em) {
      .timeline::after {
        -webkit-transform-origin: left center;
                transform-origin: left center; } }
  .timeline__stop {
    position: relative;
    padding: 0 0 4.8rem 5.2rem; }
    @media print, screen and (min-width: 64em) {
      .timeline__stop {
        padding: 5.6rem 0 0; } }
    .timeline__stop:last-child {
      padding-bottom: 0; }
  .timeline__dot {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 2.4rem;
    height: 2.4rem;
    border: 0.3rem solid #06F297;
    background-color: #012641; }
  .timeline__stop--goal .timeline__dot {
    background-color: #06F297;
    box-shadow: 0 0 0 0.6rem rgba(6, 242, 151, 0.2); }
  .timeline__when {
    font-family: "Bulevar", sans-serif;
    font-size: 4.8rem;
    line-height: 1;
    color: #06F297;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .timeline__when {
        font-size: 6rem; } }
  .timeline__title {
    margin-top: 1.4rem;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .timeline__title {
        font-size: 2.6rem; } }
  .timeline__text {
    max-width: 44rem;
    margin-top: 1rem;
    font-size: 1.7rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .timeline__text {
        font-size: 1.8rem; } }
  .timeline__text + .arrow-link, .timeline__links {
    margin-top: 1.4rem; }
  .timeline__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 2.4rem; }

.has-appear .timeline:not(.timeline--in)::after {
  -webkit-transform: scaleY(0);
          transform: scaleY(0); }
  @media print, screen and (min-width: 64em) {
    .has-appear .timeline:not(.timeline--in)::after {
      -webkit-transform: scaleX(0);
              transform: scaleX(0); } }

.garant {
  /* uvozovka jako dvě zkosené zelené kostky — hranatý jazyk místo glyfu písma */ }
  .garant__photo {
    position: relative;
    max-width: 52rem;
    margin: 0;
    aspect-ratio: 4 / 5; }
    .garant__photo > img {
      -o-object-position: center top;
         object-position: center top; }
  .garant__badge {
    position: absolute;
    left: 0;
    bottom: 2.4rem;
    z-index: 2;
    padding: .8rem 1.4rem;
    background-color: #012641;
    color: #06F297;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase; }
  .garant__body {
    margin-top: 6rem; }
    @media print, screen and (min-width: 64em) {
      .garant__body {
        margin-top: 0;
        padding-left: 3rem; } }
  .garant__quote {
    margin: 0;
    padding: 0; }
    .garant__quote p {
      font-size: 2.6rem;
      font-weight: 600;
      line-height: 1.28;
      letter-spacing: -.02em; }
      @media print, screen and (min-width: 48em) {
        .garant__quote p {
          font-size: 3.4rem; } }
      @media screen and (min-width: 75em) {
        .garant__quote p {
          font-size: 4rem; } }
  .garant__mark {
    display: block;
    width: 5.4rem;
    height: 4rem;
    margin-bottom: 2.4rem;
    overflow: hidden;
    color: transparent;
    font-size: 0;
    background: linear-gradient(90deg, #06F297 0, #06F297 38%, transparent 38%, transparent 62%, #06F297 62%, #06F297 100%);
    -webkit-transform: skewX(-14deg);
            transform: skewX(-14deg); }
    @media print, screen and (min-width: 48em) {
      .garant__mark {
        width: 7rem;
        height: 5.2rem; } }
  .garant__who {
    margin-top: 3.2rem;
    padding-left: 2rem;
    border-left: 0.3rem solid #06F297; }
  .garant__name {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .garant__name {
        font-size: 2.6rem; } }
  .garant__titul {
    font-size: .75em;
    font-weight: 500;
    opacity: .7; }
  .garant__role {
    max-width: 60rem;
    margin-top: .6rem;
    font-size: 1.5rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.7); }
    @media print, screen and (min-width: 48em) {
      .garant__role {
        font-size: 1.7rem; } }
  .garant .page__btns {
    margin-top: 3.2rem; }

/*---------------------------------------------------
        5. Etapa 1 do roku 2030 (#etapa-2030)
---------------------------------------------------*/
.rich {
  margin: 4rem 0 0;
  padding: 0;
  list-style: none; }
  @media print, screen and (min-width: 64em) {
    .rich {
      margin-top: .6rem; } }
  .rich__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2rem;
    padding: 2.4rem 0;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.2); }
    .rich__item:last-child {
      border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2); }
    @media print, screen and (min-width: 48em) {
      .rich__item {
        gap: 3rem;
        padding: 3rem 0; } }
  .rich__num {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    min-width: 5rem;
    font-family: "Bulevar", sans-serif;
    font-size: 4.8rem;
    line-height: .85;
    color: #06F297; }
    @media print, screen and (min-width: 48em) {
      .rich__num {
        min-width: 7rem;
        font-size: 6.4rem; } }
  .rich__title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .rich__title {
        font-size: 2.8rem; } }
  .rich__text {
    margin-top: .8rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .rich__text {
        font-size: 1.8rem; } }

/*---------------------------------------------------
        9. Etapa 2 do roku 2040: nová čtvrť (#etapa-2040)
        slider vizualizací, obrázek s hotspoty, 60 %, pravidla, podmínky místa
---------------------------------------------------*/
.ctvrt {
  /* ---------------------------------------------------- slider (Swiper 3) */
  /* dvojitá třída kvůli swiper.min.css, který se načítá až po main.css */
  /* Swiper přidá kontejneru třídy stránkování s absolutní polohou a šířkou 100 % */
  /* ---------------------------------------------------- obrázek s hotspoty
       Bez JS a pod „large" je to obrázek + mřížka karet. Od „large" (a jen s JS,
       třída --js) se karty změní v bubliny u pulzujících bodů na obrázku. */
  /* ---------------------------------------------------- 60 % */ }
  .ctvrt__subtitle {
    margin: 8rem 0 1rem;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.02em; }
    @media print, screen and (min-width: 48em) {
      .ctvrt__subtitle {
        margin-top: 10rem;
        font-size: 3.6rem; } }
  .ctvrt__slider {
    max-width: 160rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: .5rem;
    padding-right: .5rem;
    margin-top: 5rem; }
    @media print, screen and (min-width: 48em) {
      .ctvrt__slider {
        padding-left: 3rem;
        padding-right: 3rem; } }
    .ctvrt__slider .swiper-container {
      /* slidy přesahují doprava až k okraji okna (ořízne je .content) */
      overflow: visible; }
  .ctvrt__slide.swiper-slide {
    width: 86%;
    margin: 0;
    opacity: .4;
    transition: opacity .5s ease; }
    @media print, screen and (min-width: 48em) {
      .ctvrt__slide.swiper-slide {
        width: 74%; } }
    @media screen and (min-width: 75em) {
      .ctvrt__slide.swiper-slide {
        width: 64%; } }
    .ctvrt__slide.swiper-slide.swiper-slide-active {
      opacity: 1; }
  .ctvrt__slide-media {
    aspect-ratio: 16 / 10; }
  .ctvrt__caption {
    max-width: 64rem;
    margin-top: 1.6rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .ctvrt__caption {
        font-size: 1.8rem; } }
    .ctvrt__caption b {
      color: white; }
    .ctvrt__caption-num {
      margin-right: .6rem;
      font-family: "Bulevar", sans-serif;
      font-size: 2.6rem;
      line-height: 1;
      color: #06F297;
      vertical-align: -.2rem; }
  .ctvrt__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.6rem;
    margin-top: 2.4rem; }
  .ctvrt__arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 5.6rem;
    height: 5.6rem;
    padding: 0;
    border: 0;
    background-color: #06F297;
    cursor: pointer;
    transition: background-color ease 0.3s, opacity ease 0.3s; }
    .ctvrt__arrow:hover {
      background-color: white; }
    .ctvrt__arrow--prev .ctvrt__arrow-img {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
    .ctvrt__arrow.swiper-button-disabled {
      opacity: .3;
      cursor: default; }
    .ctvrt__arrow-img {
      display: block;
      width: 1.8rem;
      height: auto; }
  .ctvrt__count.swiper-pagination-fraction {
    position: static;
    width: auto;
    min-width: 7rem;
    font-family: "Bulevar", sans-serif;
    font-size: 2.8rem;
    line-height: 1;
    text-align: center;
    color: rgba(255, 255, 255, 0.6); }
    .ctvrt__count.swiper-pagination-fraction .swiper-pagination-current {
      color: #06F297; }
  .ctvrt__map {
    position: relative;
    margin-top: 3rem; }
    .ctvrt__map-media {
      aspect-ratio: 16 / 9; }
  .ctvrt__spots {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    gap: 1rem;
    margin-top: 1rem; }
    @media screen and (orientation: landscape) {
      .ctvrt__spots {
        -ms-grid-columns: (1fr)[2];
            grid-template-columns: repeat(2, 1fr); } }
    @media print, screen and (min-width: 48em) {
      .ctvrt__spots {
        -ms-grid-columns: (1fr)[3];
            grid-template-columns: repeat(3, 1fr); } }
  .ctvrt__share {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 8rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.15);
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.15); }
    @media print, screen and (min-width: 48em) {
      .ctvrt__share {
        margin-top: 10rem; } }
    .ctvrt__share-number {
      font-family: "Bulevar", sans-serif;
      font-size: 16rem;
      line-height: .8;
      color: #06F297;
      white-space: nowrap; }
      @media print, screen and (min-width: 48em) {
        .ctvrt__share-number {
          font-size: 22rem; } }
      @media screen and (min-width: 75em) {
        .ctvrt__share-number {
          font-size: 28rem; } }
    .ctvrt__share-title {
      margin-top: 2rem;
      font-size: 3rem;
      font-weight: 700;
      line-height: 1.1;
      letter-spacing: -.02em; }
      @media print, screen and (min-width: 48em) {
        .ctvrt__share-title {
          font-size: 4.2rem; } }
      @media print, screen and (min-width: 64em) {
        .ctvrt__share-title {
          margin-top: 0; } }
    .ctvrt__share-text {
      max-width: 60rem;
      margin-top: 2rem;
      font-size: 1.8rem;
      line-height: 1.5;
      color: rgba(255, 255, 255, 0.75); }
      @media print, screen and (min-width: 48em) {
        .ctvrt__share-text {
          font-size: 2rem; } }

.hotspot {
  position: relative; }
  .hotspot__btn {
    display: none; }
  .hotspot__pop {
    height: 100%;
    padding: 2.2rem 2rem 2.4rem;
    background-color: rgba(255, 255, 255, 0.06); }
  .hotspot__ico {
    display: block;
    width: 3.2rem;
    height: 3.2rem;
    margin-bottom: 1.4rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: square;
    stroke-linejoin: miter; }
  .hotspot__title {
    font-size: 1.9rem;
    font-weight: 700;
    line-height: 1.2; }
  .hotspot__text {
    margin-top: .6rem;
    font-size: 1.5rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }

@media print, screen and (min-width: 64em) {
  .ctvrt__map--js {
    /* body v pravé části obrázku otevírají bublinu doleva */ }
    .ctvrt__map--js .ctvrt__spots {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      display: block;
      margin: 0; }
    .ctvrt__map--js .hotspot {
      position: absolute;
      width: 0;
      height: 0;
      /* polohy bodů v procentech rámu 16:9 — obrázek ctvrt-hotspot.jpg je 2:1 a ořezává se
               na střed (object-fit: cover), takže x_rám = 1,125 × x_obrázek − 6,25 %; y beze změny */ }
      .ctvrt__map--js .hotspot--bydleni {
        left: 42.4%;
        top: 27.6%; }
      .ctvrt__map--js .hotspot--skola {
        left: 64.6%;
        top: 54.2%; }
      .ctvrt__map--js .hotspot--zelen {
        left: 51.8%;
        top: 51.6%; }
      .ctvrt__map--js .hotspot--kolo {
        left: 46.8%;
        top: 80.7%; }
      .ctvrt__map--js .hotspot--doprava {
        left: 31.3%;
        top: 10.9%; }
      .ctvrt__map--js .hotspot.is-open {
        z-index: 3; }
    .ctvrt__map--js .hotspot__btn {
      position: absolute;
      top: -2.4rem;
      left: -2.4rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 4.8rem;
      height: 4.8rem;
      padding: 0;
      border: 0;
      background: none;
      cursor: pointer; }
      .ctvrt__map--js .hotspot__btn::before {
        content: '';
        position: relative;
        z-index: 1;
        width: 2rem;
        height: 2rem;
        border: 0.3rem solid #012641;
        background-color: #06F297;
        transition: background-color ease 0.3s, -webkit-transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
        transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color ease 0.3s;
        transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color ease 0.3s, -webkit-transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1); }
      .ctvrt__map--js .hotspot__btn:hover::before, .ctvrt__map--js .hotspot__btn[aria-expanded="true"]::before {
        background-color: white;
        -webkit-transform: rotate(45deg) scale(1.15);
                transform: rotate(45deg) scale(1.15); }
    .ctvrt__map--js .hotspot__pulse {
      position: absolute;
      top: .6rem;
      right: .6rem;
      bottom: .6rem;
      left: .6rem;
      border: 0.2rem solid #06F297;
      -webkit-animation: hotspotPulse 2.2s cubic-bezier(0.2, 0.8, 0.2, 1) infinite;
              animation: hotspotPulse 2.2s cubic-bezier(0.2, 0.8, 0.2, 1) infinite; }
    .ctvrt__map--js .hotspot__pop {
      position: absolute;
      top: -2.4rem;
      left: 3.6rem;
      width: 30rem;
      height: auto;
      padding: 2.2rem 2.2rem 2.4rem;
      background-color: white;
      color: #012641;
      box-shadow: 0 2.4rem 5rem rgba(0, 0, 0, 0.35);
      -webkit-animation: hotspotIn 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
              animation: hotspotIn 0.35s cubic-bezier(0.2, 0.8, 0.2, 1); }
    .ctvrt__map--js .hotspot--kolo .hotspot__pop,
    .ctvrt__map--js .hotspot--skola .hotspot__pop {
      left: auto;
      right: 3.6rem; }
    .ctvrt__map--js .hotspot--kolo .hotspot__pop {
      top: auto;
      bottom: -2.4rem; }
    .ctvrt__map--js .hotspot__text {
      color: rgba(1, 38, 65, 0.75); } }

@-webkit-keyframes hotspotPulse {
  0% {
    opacity: 1;
    -webkit-transform: scale(0.6);
            transform: scale(0.6); }
  80%, 100% {
    opacity: 0;
    -webkit-transform: scale(1.6);
            transform: scale(1.6); } }

@keyframes hotspotPulse {
  0% {
    opacity: 1;
    -webkit-transform: scale(0.6);
            transform: scale(0.6); }
  80%, 100% {
    opacity: 0;
    -webkit-transform: scale(1.6);
            transform: scale(1.6); } }

@-webkit-keyframes hotspotIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@keyframes hotspotIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@media (prefers-reduced-motion: reduce) {
  .ctvrt__map--js .hotspot__pulse {
    -webkit-animation: none;
            animation: none;
    opacity: .6; }
  .ctvrt__map--js .hotspot__pop {
    -webkit-animation: none;
            animation: none; } }

/* ---------------------------------------------------- podmínky místa */
.place {
  margin-top: 6rem;
  padding: 3rem 2.4rem;
  border: 0.1rem solid rgba(255, 255, 255, 0.2); }
  @media print, screen and (min-width: 48em) {
    .place {
      padding: 4rem; } }
  @media print, screen and (min-width: 64em) {
    .place {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      gap: 4rem; } }
  .place__title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .place__title {
        font-size: 3rem; } }
  .place__text {
    max-width: 44rem;
    margin-top: .8rem;
    font-size: 1.7rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .place__text {
        font-size: 1.9rem; } }
  .place__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem 2rem;
    margin-top: 3rem; }
    @media print, screen and (min-width: 48em) {
      .place__list {
        -ms-grid-columns: (1fr)[4];
            grid-template-columns: repeat(4, 1fr); } }
    @media print, screen and (min-width: 64em) {
      .place__list {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        gap: 3.2rem;
        margin-top: 0; } }
  .place__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
    max-width: 16rem;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.3; }
  .place__ico {
    display: block;
    width: 3.6rem;
    height: 3.6rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: square;
    stroke-linejoin: miter; }

/*---------------------------------------------------
        7. Vývojové centrum (#centrum) a 8. Investiční fond (#fond)
---------------------------------------------------*/
/* ---------------------------------------------------- 4 kroky se spojnicemi
   Kroky se rozsvěcují postupně (initProcess přidává .is-in), spojnice se
   za každým krokem dokreslí. Bez animací jsou rovnou všechny rozsvícené. */
.process {
  max-width: 160rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: .5rem;
  padding-right: .5rem;
  display: -ms-grid;
  display: grid;
  list-style: none;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  margin-top: 5rem; }
  @media print, screen and (min-width: 48em) {
    .process {
      padding-left: 3rem;
      padding-right: 3rem; } }
  @media print, screen and (min-width: 64em) {
    .process {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr);
      margin-top: 7rem; } }
  .process__step {
    position: relative;
    min-height: 5.6rem;
    padding: 0 0 4.4rem 8rem; }
    @media print, screen and (min-width: 64em) {
      .process__step {
        padding: 0 3rem 0 0; } }
    .process__step::before, .process__step::after {
      content: '';
      position: absolute;
      top: 6.6rem;
      bottom: 1rem;
      left: 2.7rem;
      width: .2rem;
      background-color: rgba(255, 255, 255, 0.15); }
      @media print, screen and (min-width: 64em) {
        .process__step::before, .process__step::after {
          top: 2.7rem;
          bottom: auto;
          left: 6.6rem;
          right: 1rem;
          width: auto;
          height: .2rem; } }
    .process__step::after {
      background-color: #06F297;
      -webkit-transform: scaleY(0);
              transform: scaleY(0);
      -webkit-transform-origin: center top;
              transform-origin: center top;
      transition: -webkit-transform 0.7s cubic-bezier(0.65, 0, 0.35, 1) 0.25s;
      transition: transform 0.7s cubic-bezier(0.65, 0, 0.35, 1) 0.25s;
      transition: transform 0.7s cubic-bezier(0.65, 0, 0.35, 1) 0.25s, -webkit-transform 0.7s cubic-bezier(0.65, 0, 0.35, 1) 0.25s; }
      @media print, screen and (min-width: 64em) {
        .process__step::after {
          -webkit-transform: scaleX(0);
                  transform: scaleX(0);
          -webkit-transform-origin: left center;
                  transform-origin: left center; } }
    .process__step:last-child {
      padding-bottom: 0; }
      .process__step:last-child::before, .process__step:last-child::after {
        display: none; }
  .process__num {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 5.6rem;
    height: 5.6rem;
    border: 0.2rem solid rgba(255, 255, 255, 0.3);
    font-family: "Bulevar", sans-serif;
    font-size: 2.8rem;
    line-height: 1;
    color: white;
    transition: background-color .5s ease, border-color .5s ease, color .5s ease; }
    @media print, screen and (min-width: 64em) {
      .process__num {
        position: relative; } }
  .process__ico {
    display: block;
    width: 3.6rem;
    height: 3.6rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: square;
    stroke-linejoin: miter; }
    @media print, screen and (min-width: 64em) {
      .process__ico {
        margin-top: 3rem; } }
  .process__title {
    margin-top: 1rem;
    font-family: "Bulevar", sans-serif;
    font-size: 4.2rem;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .process__title {
        font-size: 5rem; } }
  .process__text {
    max-width: 30rem;
    margin-top: .8rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .process__text {
        font-size: 1.7rem; } }
  .process__step.is-in .process__num,
  html:not(.has-appear) .process__num {
    border-color: #06F297;
    background-color: #06F297;
    color: #012641; }
  .process__step.is-in::after,
  html:not(.has-appear) .process__step::after {
    -webkit-transform: none;
            transform: none; }

.centrum__body {
  margin-top: 4rem; }
  @media print, screen and (min-width: 64em) {
    .centrum__body {
      margin-top: 7rem; } }

.centrum__visual {
  margin-top: 4rem;
  aspect-ratio: 4 / 3; }
  @media print, screen and (min-width: 64em) {
    .centrum__visual {
      margin-top: 0; } }

/* ---------------------------------------------------- proč na tom záleží */
.why {
  max-width: 160rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: .5rem;
  padding-right: .5rem;
  margin-top: 6rem; }
  @media print, screen and (min-width: 48em) {
    .why {
      padding-left: 3rem;
      padding-right: 3rem; } }
  @media print, screen and (min-width: 48em) {
    .why {
      margin-top: 8rem; } }
  .why__title {
    margin-bottom: 2.4rem;
    font-family: "Bulevar", sans-serif;
    font-size: 4.4rem;
    font-weight: 400;
    line-height: 1;
    color: #06F297;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .why__title {
        font-size: 5.6rem; } }
  .why__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr; }
    @media print, screen and (min-width: 64em) {
      .why__list {
        -ms-grid-columns: (1fr)[3];
            grid-template-columns: repeat(3, 1fr);
        gap: 3rem; } }
  .why__item {
    padding: 2.2rem 0;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.2); }
    @media print, screen and (min-width: 64em) {
      .why__item {
        padding: 2.6rem 0 0; } }
    .why__item-title {
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.2; }
      @media print, screen and (min-width: 48em) {
        .why__item-title {
          font-size: 2.4rem; } }
    .why__item-text {
      margin-top: .8rem;
      font-size: 1.6rem;
      line-height: 1.5;
      color: rgba(255, 255, 255, 0.75); }
      @media print, screen and (min-width: 48em) {
        .why__item-text {
          font-size: 1.8rem; } }

/* ---------------------------------------------------- fond */
.fond__message {
  margin-top: 3rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.55; }
  @media print, screen and (min-width: 48em) {
    .fond__message {
      font-size: 3.2rem; } }

.fond__points {
  margin-top: 3rem; }

/* dělený pruh veřejný / soukromý podíl */
.split {
  margin-top: 5rem; }
  @media print, screen and (min-width: 64em) {
    .split {
      margin-top: 1rem; } }
  .split__bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    height: 12rem; }
    @media print, screen and (min-width: 48em) {
      .split__bar {
        height: 18rem; } }
  .split__part {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 1rem .8rem;
    overflow: hidden; }
    @media screen and (orientation: landscape) {
      .split__part {
        padding: 1.4rem 1.6rem; } }
    .split__part--public {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 30%;
              flex: 0 0 30%;
      background-color: #06F297;
      color: #012641;
      -webkit-transform-origin: left center;
              transform-origin: left center;
      transition: -webkit-transform 1.1s cubic-bezier(0.65, 0, 0.35, 1) 0.35s;
      transition: transform 1.1s cubic-bezier(0.65, 0, 0.35, 1) 0.35s;
      transition: transform 1.1s cubic-bezier(0.65, 0, 0.35, 1) 0.35s, -webkit-transform 1.1s cubic-bezier(0.65, 0, 0.35, 1) 0.35s; }
    .split__part--private {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto;
      background-color: rgba(255, 255, 255, 0.08);
      box-shadow: inset 0 0 0 0.1rem rgba(255, 255, 255, 0.25);
      color: white; }
  .split__pct {
    font-family: "Bulevar", sans-serif;
    font-size: 3rem;
    line-height: .9;
    white-space: nowrap; }
    @media screen and (orientation: landscape) {
      .split__pct {
        font-size: 4.4rem; } }
    @media print, screen and (min-width: 48em) {
      .split__pct {
        font-size: 7rem; } }
  .split__legend {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 1.6rem; }
    .split__legend-item--public {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 30%;
              flex: 0 0 30%;
      padding-right: 1rem; }
    .split__legend-item--private {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto;
      padding-left: 1.6rem; }
    .split__legend-name {
      display: block;
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.25; }
      @media print, screen and (min-width: 48em) {
        .split__legend-name {
          font-size: 1.7rem; } }
    .split__legend-desc {
      display: block;
      margin-top: .3rem;
      font-size: 1.3rem;
      line-height: 1.4;
      color: rgba(255, 255, 255, 0.65); }
      @media print, screen and (min-width: 48em) {
        .split__legend-desc {
          font-size: 1.5rem; } }

.has-appear .split:not(.appear--in) .split__part--public {
  -webkit-transform: scaleX(0);
          transform: scaleX(0); }

/*---------------------------------------------------
        Persony (v sekci #pro-vas) a Jinde to funguje (#inspirace)
---------------------------------------------------*/
.provas__grid,
.inspirace__grid {
  margin-top: 2rem; }
  @media print, screen and (min-width: 48em) {
    .provas__grid,
    .inspirace__grid {
      margin-top: 3rem; } }

.persona {
  position: relative;
  height: calc(100% - 2rem);
  margin-top: 2rem;
  padding: 3rem 2.4rem 3.4rem;
  background-color: rgba(255, 255, 255, 0.05);
  overflow: hidden;
  /* zelená linka zespodu — stejný pohyb jako podtah v menu */ }
  @media print, screen and (min-width: 48em) {
    .persona {
      padding: 3.6rem 3rem 4rem; } }
  .persona::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: .4rem;
    background-color: #06F297;
    -webkit-transform: scaleX(0.18);
            transform: scaleX(0.18);
    -webkit-transform-origin: left center;
            transform-origin: left center;
    transition: -webkit-transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
    transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), -webkit-transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1); }
  .persona:hover::after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }
  .persona__ico {
    display: block;
    width: 4.8rem;
    height: 4.8rem;
    color: #06F297;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.4;
    stroke-linecap: square;
    stroke-linejoin: miter; }
  .persona__who {
    margin-top: 2.4rem;
    font-family: "Bulevar", sans-serif;
    font-size: 3.6rem;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .persona__who {
        font-size: 4.2rem; } }
  .persona__text {
    margin-top: 1.4rem;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.85); }
    @media print, screen and (min-width: 48em) {
      .persona__text {
        font-size: 2rem; } }

.example {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: calc(100% - 2rem);
  margin-top: 2rem;
  padding: 3rem 2.4rem 3.2rem;
  border: 0.1rem solid rgba(255, 255, 255, 0.2);
  /* pointa „Stačí začít." */ }
  @media print, screen and (min-width: 48em) {
    .example {
      padding: 3.6rem 3.2rem; } }
  .example__city {
    font-family: "Bulevar", sans-serif;
    font-size: 4rem;
    line-height: 1;
    color: #06F297;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .example__city {
        font-size: 4.8rem; } }
  .example__title {
    margin-top: 1.4rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2; }
    @media print, screen and (min-width: 48em) {
      .example__title {
        font-size: 2.4rem; } }
  .example__text {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.75); }
    @media print, screen and (min-width: 48em) {
      .example__text {
        font-size: 1.7rem; } }
  .example__source {
    -ms-flex-item-align: start;
        align-self: flex-start;
    margin-top: 2.4rem;
    padding-bottom: .2rem;
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.3);
    color: rgba(255, 255, 255, 0.6);
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    transition: color ease 0.3s, border-color ease 0.3s; }
    .example__source:hover, .example__source:focus-visible {
      color: #06F297;
      border-color: #06F297; }
  .example--point {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-height: 24rem;
    border-color: #06F297;
    background-color: #06F297;
    color: #012641; }
    .example--point .example__city {
      color: #012641; }
  .example__point {
    margin-top: 4rem;
    font-family: "Bulevar", sans-serif;
    font-size: 8rem;
    line-height: .9;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .example__point {
        font-size: 10rem; } }

/*---------------------------------------------------
        11. Ptáte se (#otazky) — accordion + „Zeptejte se nás"
---------------------------------------------------*/
.faq {
  /* plus, který se při otevření složí do mínus */ }
  .faq__list {
    margin-top: 4rem;
    border-top: 0.1rem solid rgba(255, 255, 255, 0.2); }
    @media print, screen and (min-width: 64em) {
      .faq__list {
        margin-top: .6rem; } }
  .faq__item {
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2); }
  .faq__q {
    margin: 0;
    font-size: inherit; }
  .faq__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2rem;
    width: 100%;
    padding: 2rem 0;
    border: 0;
    background: none;
    color: white;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-size: 1.9rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.01em;
    text-align: left;
    cursor: pointer;
    transition: color ease 0.3s; }
    @media print, screen and (min-width: 48em) {
      .faq__btn {
        padding: 2.4rem 0;
        font-size: 2.4rem; } }
    .faq__btn:hover {
      color: #06F297; }
  .faq__plus {
    position: relative;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 4.4rem;
    height: 4.4rem;
    background-color: rgba(255, 255, 255, 0.08);
    transition: background-color ease 0.3s; }
    .faq__plus::before, .faq__plus::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 1.6rem;
      height: .2rem;
      margin: -.1rem 0 0 -.8rem;
      background-color: white;
      transition: background-color ease 0.3s, -webkit-transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
      transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color ease 0.3s;
      transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color ease 0.3s, -webkit-transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1); }
    .faq__plus::after {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg); }
  .faq__btn[aria-expanded="true"] .faq__plus {
    background-color: #06F297; }
    .faq__btn[aria-expanded="true"] .faq__plus::before, .faq__btn[aria-expanded="true"] .faq__plus::after {
      background-color: #012641; }
    .faq__btn[aria-expanded="true"] .faq__plus::after {
      -webkit-transform: rotate(0);
              transform: rotate(0); }
  .faq__panel {
    overflow: hidden;
    transition: height 0.45s cubic-bezier(0.2, 0.8, 0.2, 1); }
  .faq__a {
    padding: 0 0 2.6rem; }
    @media print, screen and (min-width: 48em) {
      .faq__a {
        padding-right: 6.4rem; } }
    .faq__a p {
      font-size: 1.7rem;
      line-height: 1.55;
      color: rgba(255, 255, 255, 0.8); }
      @media print, screen and (min-width: 48em) {
        .faq__a p {
          font-size: 1.9rem; } }

@media (prefers-reduced-motion: reduce) {
  .faq__panel,
  .faq__plus::before,
  .faq__plus::after {
    transition: none; } }

.ask {
  margin-top: 6rem;
  padding: 3rem 2rem 3.4rem;
  border: 0.1rem solid rgba(255, 255, 255, 0.14);
  background-color: rgba(255, 255, 255, 0.03); }
  @media print, screen and (min-width: 48em) {
    .ask {
      margin-top: 8rem;
      padding: 4.4rem; } }
  .ask__title {
    font-family: "Bulevar", sans-serif;
    font-size: 4.4rem;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .ask__title {
        font-size: 5.6rem; } }
  .ask__lead {
    margin: 1rem 0 3rem;
    font-size: 1.6rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.7); }
    @media print, screen and (min-width: 48em) {
      .ask__lead {
        font-size: 1.8rem; } }

/*---------------------------------------------------
        15. Zapojte se (#zapojte-se) — formulář novinek a sdílení
---------------------------------------------------*/
/* ---------------------------------------------------- zapojte se */
.zapojit__card {
  margin-top: 5rem;
  padding: 2.8rem 2rem 3.2rem;
  background-color: #001a2d;
  box-shadow: inset 0 0.4rem 0 #06F297; }
  @media print, screen and (min-width: 48em) {
    .zapojit__card {
      padding: 4.4rem 4rem; } }
  @media print, screen and (min-width: 64em) {
    .zapojit__card {
      margin-top: 0; } }

.zapojit__more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .4rem 1.6rem;
  margin-top: 2.4rem;
  color: rgba(255, 255, 255, 0.75);
  font-size: 1.6rem; }

.share {
  margin-top: 4rem; }
  .share__title {
    margin-bottom: 1.4rem;
    color: rgba(255, 255, 255, 0.6);
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase; }
  .share__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem; }
  .share__btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: .8rem;
    min-height: 4.8rem;
    padding: 0 1.6rem;
    border: 0.1rem solid rgba(255, 255, 255, 0.3);
    background: none;
    color: white;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color ease 0.3s, border-color ease 0.3s, color ease 0.3s; }
    .share__btn:hover, .share__btn:focus-visible {
      border-color: #06F297;
      background-color: #06F297;
      color: #012641; }
  .share__ico {
    display: block;
    width: 2rem;
    height: 2rem; }
    .share__ico--line {
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: square;
      stroke-linejoin: miter; }
  .share__status {
    min-height: 2.2rem;
    margin-top: 1rem;
    color: #06F297;
    font-size: 1.4rem;
    font-weight: 600; }
