*, *::before, *::after {
  box-sizing: border-box; /* Set the sizing of an element to include it's border */
}

* {
  margin: 0; /* Set the default margin to 0 */
  padding: 0; /* Set the default padding to 0 */
}

ul[role=list], ol[role=list] {
  list-style: none; /* Turn off numbered and unordered list decoration */
}

html:focus-within {
  scroll-behavior: smooth; /* Make the scrolling inside of any scrollable element smooth */
}

a:not([class]) {
  text-decoration-skip-ink: auto; /* Makes link undelines look better */
}

img, picture, svg, video, canvas {
  max-width: 100%; /* Makes it responsive */
  height: auto; /* Makes it responsive */
  vertical-align: middle; /* Makes text next to inline images look better */
  font-style: italic; /* If the images don't load it makes the alt decription look better */
  background-repeat: no-repeat;
  /* The background repeat and size are there if you want to load a picture first like a backroung image that is worse quality while the better quality image loads */
  background-size: cover;
}

input, button, textarea, select {
  font: inherit; /* Makes these elements inherit fonts */
}

/* Turns off animation for people who don't want to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
    transition: none;
  }
}
body, html {
  height: 100%; /* Makes the body element full screen */
  scroll-behavior: smooth; /* Makes normal scrolling smooth */
}

@font-face {
  font-family: "FT Regola Neue";
  font-weight: 700;
  font-style: normal;
  src: local("FT Regola Neue"), url("https://folkovna.cz/fonts/FTRegolaNeue-Bold.otf") format("opentype"), url("https://folkovna.cz/fonts/FTRegolaNeue-Bold.woff") format("woff"), url("https://folkovna.cz/fonts/FTRegolaNeue-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "FT Regola Neue";
  font-weight: 400;
  font-style: normal;
  src: local("FT Regola Neue"), url("https://folkovna.cz/fonts/FTRegolaNeue-Regular.otf") format("opentype"), url("https://folkovna.cz/fonts/FTRegolaNeue-Regular.woff") format("woff"), url("https://folkovna.cz/fonts/FTRegolaNeue-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Reckless Neue";
  font-weight: 400;
  font-style: normal;
  src: local("Reckless Neue"), url("https://folkovna.cz/fonts/RecklessNeue-Regular.otf") format("opentype"), url("https://folkovna.cz/fonts/RecklessNeue-Regular.woff") format("woff"), url("https://folkovna.cz/fonts/RecklessNeue-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Reckless Neue";
  font-weight: 400;
  font-style: italic;
  src: local("Reckless Neue"), url("https://folkovna.cz/fonts/RecklessNeue-RegularItalic.otf") format("opentype"), url("https://folkovna.cz/fonts/RecklessNeue-RegularItalic.woff") format("woff"), url("https://folkovna.cz/fonts/RecklessNeue-RegularItalic.woff2") format("woff2");
}
html, body {
  min-height: 100vh;
}

body {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #2C2D76;
  background-color: #EAE7DC;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Reckless Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

:root {
  --foo-side-padding: 1.5rem;
}
@media all and (min-width: 512px) {
  :root {
    --foo-side-padding: 2rem;
  }
}

.wrapper {
  min-height: 100vh;
  padding: 0 var(--foo-side-padding);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: min-content min-content min-content;
  grid-template-areas: "header" "main" "footer";
}

.wrapper > header {
  grid-area: header;
}

.wrapper > main {
  grid-area: main;
}

.wrapper > footer {
  grid-area: footer;
}

h1 {
  margin: 4rem 0 3rem;
}

a {
  color: inherit !important;
}

svg {
  max-width: 100vw;
}

h2 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 2.375rem;
  margin: 6rem 0 1rem;
  max-width: 20rem;
}
@media screen and (min-width: 48rem) {
  h2 {
    max-width: 32rem;
  }
}

.day-time {
  font-size: 1.125rem;
  line-height: 2rem;
  font-weight: 700;
  margin-top: 1.75rem;
  margin-bottom: 4rem;
}

.time {
  float: right;
}

footer {
  display: grid;
  grid-template-columns: max-content 1fr;
  grid-template-areas: "address ." ". topper" "cite copy";
  align-items: end;
  margin-top: 7rem;
  margin-bottom: 1rem;
}
footer p, footer address {
  font-size: 0.625rem;
  font-style: normal;
  line-height: 1.4em;
  margin: 0;
}
footer p.copy {
  text-align: right;
}
footer .topper {
  grid-area: topper;
  justify-self: end;
  margin: 2rem 0 3rem;
}
footer .address {
  grid-area: address;
}
footer .cite {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  grid-area: cite;
}
footer .copy {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  grid-area: copy;
}
@media all and (min-width: 48rem) {
  footer {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: ". . topper" "address cite copy";
    width: calc(100vw - 2 * var(--foo-side-padding));
  }
  footer .topper {
    margin: 0;
  }
  footer p {
    display: block;
  }
  footer p.cite {
    text-align: center;
  }
}

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

@media all and (min-width: 512px) {
  .wide-only {
    display: block !important;
  }
}
.sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

:root {
  --foo-violet: #2C2D76;
  font-size: 16px;
}
.anchor {
  position: relative;
}
.anchor > span {
  position: absolute;
  top: -25vh;
}

div:has(> img[src=""]):after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(131, 58, 180);
  background: -moz-linear-gradient(-45deg, rgb(131, 58, 180) 0%, rgb(253, 29, 29) 50%, rgb(252, 176, 69) 100%);
  background: -webkit-linear-gradient(-45deg, rgb(131, 58, 180) 0%, rgb(253, 29, 29) 50%, rgb(252, 176, 69) 100%);
  background: linear-gradient(-45deg, rgb(131, 58, 180) 0%, rgb(253, 29, 29) 50%, rgb(252, 176, 69) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#833ab4",endColorstr="#fcb045",GradientType=1);
}
div img[src=""] {
  display: none;
}

.asp-ratio {
  position: relative;
  display: block;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.asp-ratio:first-child {
  margin-top: 0;
}
.asp-ratio:last-child {
  margin-bottom: 0;
}
.asp-ratio:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.asp-ratio.flow-changer {
  display: none !important;
}
.asp-ratio.ratio-2by3 {
  width: 100%;
}
.asp-ratio.ratio-2by3:before {
  padding-top: 150%;
}
.asp-ratio.ratio-2by3.mw {
  max-width: 58vw;
}
@media screen and (min-width: 48rem) {
  .asp-ratio.ratio-2by3.mw {
    max-width: 23vw;
  }
}
.asp-ratio.ratio-3by2 {
  width: 100%;
}
.asp-ratio.ratio-3by2:before {
  padding-top: 66.6666667%;
}
.asp-ratio.ratio-3by2.mw {
  max-width: 87vw;
}
@media screen and (min-width: 48rem) {
  .asp-ratio.ratio-3by2.mw {
    max-width: 33vw;
  }
}
.asp-ratio img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.image-grid {
  display: block;
  margin: 6rem 0;
}
.image-grid > div.ratio-2by3 {
  width: 60%;
}
.image-grid > div.ratio-3by2 {
  width: 100%;
}

@media screen and (max-width: 48rem) {
  #index .image-grid:nth-child(1 of .image-grid) > div:nth-child(2) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * -1);
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(1) {
    margin-left: calc(var(--foo-side-padding) * -0.5);
    margin-right: auto;
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(2) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * -0.5);
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(3) {
    margin-left: calc(var(--foo-side-padding) * 0.5);
    margin-right: auto;
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(1) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * 0.5);
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(2) {
    margin-left: calc(var(--foo-side-padding) * -1);
    margin-right: auto;
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(3) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * -0.5);
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(1) {
    margin-left: calc(var(--foo-side-padding) * 0);
    margin-right: auto;
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(2) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * -1);
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(3) {
    margin-left: calc(var(--foo-side-padding) * 0);
    margin-right: auto;
  }
  #order .image-grid:nth-child(2 of .image-grid) {
    margin-bottom: 0;
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(1) {
    margin-left: calc(var(--foo-side-padding) * -1);
    margin-right: auto;
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(2) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * -1);
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(3) {
    margin-left: calc(var(--foo-side-padding) * 0);
    margin-right: auto;
  }
  #order .image-grid:nth-child(3 of .image-grid) {
    margin-top: 2rem;
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(1) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * 0);
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(2) {
    margin-left: calc(var(--foo-side-padding) * -1);
    margin-right: auto;
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(3) {
    margin-left: auto;
    margin-right: calc(var(--foo-side-padding) * 0);
  }
}
@media screen and (min-width: 48rem) {
  .image-grid {
    position: relative;
  }
  .image-grid:before {
    content: "";
    display: block;
    padding-top: 100%;
  }
  .image-grid > div {
    position: absolute;
  }
  #index .image-grid:nth-child(1 of .image-grid):before {
    padding-top: 46.375464684%;
  }
  #index .image-grid:nth-child(1 of .image-grid) > div:nth-child(1) {
    top: 0;
    left: 0;
  }
  #index .image-grid:nth-child(1 of .image-grid) > div:nth-child(2) {
    top: 20%;
    left: 50%;
  }
  #index .image-grid:nth-child(2 of .image-grid):before {
    padding-top: 55.3903345725%;
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(1) {
    top: 0;
    left: 0;
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(2) {
    bottom: 0;
    left: 27%;
  }
  #index .image-grid:nth-child(2 of .image-grid) > div:nth-child(3) {
    top: 10%;
    right: 10%;
  }
  #index .image-grid:nth-child(3 of .image-grid):before {
    padding-top: 75.2788104089%;
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(1) {
    top: 0;
    left: 0;
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(2) {
    top: 35%;
    left: 45%;
  }
  #index .image-grid:nth-child(3 of .image-grid) > div:nth-child(3) {
    bottom: 0;
    left: 10%;
  }
  #order .image-grid:nth-child(1 of .image-grid):before {
    padding-top: 55.3903345725%;
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(1) {
    top: 0;
    left: 0;
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(2) {
    bottom: 0;
    left: 27%;
  }
  #order .image-grid:nth-child(1 of .image-grid) > div:nth-child(3) {
    top: 7%;
    right: 7%;
  }
  #order .image-grid:nth-child(2 of .image-grid) {
    padding-bottom: 0;
  }
  #order .image-grid:nth-child(2 of .image-grid):before {
    padding-top: 44.8884758364%;
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(1) {
    bottom: 0;
    left: 0;
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(2) {
    top: 0;
    left: 33%;
  }
  #order .image-grid:nth-child(2 of .image-grid) > div:nth-child(3) {
    bottom: 0;
    right: 8%;
  }
  #order .image-grid:nth-child(3 of .image-grid) {
    padding-top: 2rem;
  }
  #order .image-grid:nth-child(3 of .image-grid):before {
    padding-top: 49.7211895911%;
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(1) {
    top: 10%;
    left: 0;
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(2) {
    bottom: 0;
    left: 26%;
  }
  #order .image-grid:nth-child(3 of .image-grid) > div:nth-child(3) {
    top: 0;
    left: 52%;
  }
}
body {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5em;
}
body:has(> aside.top-bar) header {
  margin-top: 2rem;
}

h2 {
  font-family: "Reckless Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.1875em;
  margin: 16px 0;
}
@media screen and (min-width: 48rem) {
  h2 {
    font-size: 3rem;
    line-height: 1.125em;
  }
}

#prakticke-informace {
  font-size: 3rem;
  line-height: 3.375rem;
  margin-top: 6rem;
  margin-bottom: 3rem;
}
@media screen and (min-width: 48rem) {
  #prakticke-informace {
    margin-top: 8rem;
    margin-bottom: 4rem;
  }
}

h4 {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5em;
  margin: 0;
}
h4:not(:first-child) {
  margin-top: 1.5rem;
}

h5 {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 2em;
  margin: 0;
}

p {
  font-family: "Reckless Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.3333333333em;
  margin: 0 0 1rem;
  max-width: 34rem;
}
p.right {
  margin-right: 0;
  margin-left: auto;
}

.column p {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.widespread li {
  margin-bottom: 1.5em;
}
ul.big {
  font-size: 1.5rem;
  line-height: 0.9166666667em;
}
ul.big li {
  margin-bottom: 0.5rem;
}

.small {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 0.875rem;
  line-height: 1rem;
  margin-bottom: 0.75rem;
}

.big {
  font-size: 1.5rem;
  line-height: 1.6875rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.btn.btn-primary {
  display: block;
  font-weight: 700;
  font-size: 1rem;
  line-height: 2rem;
  text-align: center;
  text-decoration: none;
  text-transform: lowercase;
  min-width: 8rem;
  width: fit-content;
  height: 2rem;
  margin: 3rem 0;
  border: 0.0625rem solid var(--foo-violet);
  border-radius: 0.75rem;
}

.practical-info h3 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 400;
  margin: 0;
  margin-bottom: 0.5rem;
}
.practical-info p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
  margin-bottom: 0;
}

.columns {
  display: flex;
  flex-flow: column nowrap;
  gap: 3rem;
  margin-bottom: 8rem;
}
.columns.mt {
  margin-top: 8rem;
}
@media screen and (min-width: 48rem) {
  .columns {
    flex-flow: row wrap;
  }
  .columns .column {
    flex: 0 1 calc(50% - 3rem);
  }
  .columns:has(.column:nth-child(3)) .column {
    flex: 0 1 calc(33.333333% - 3rem);
  }
}

aside.top-bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  min-height: 2rem;
  background-color: #AFBAB2;
  font-size: 1rem;
  line-height: 1.25em;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  padding: 0 1.5rem;
  z-index: 123456;
}
@media screen and (min-width: 48rem) {
  aside.top-bar {
    padding: 0 var(--foo-side-padding);
  }
}

header {
  display: flex;
  flex-flow: column nowrap;
}
@media screen and (min-width: 48rem) {
  header h1 {
    margin-top: 3rem;
  }
}
header nav {
  display: flex;
  flex-flow: row wrap;
  gap: 0 3rem;
  justify-content: space-between;
  margin-bottom: 4rem;
}
@media screen and (min-width: 48rem) {
  header nav {
    margin-top: 4rem;
    margin-bottom: 0;
  }
}
header nav ul {
  display: flex;
  flex-flow: row nowrap;
  gap: 0 3rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
header nav ul li {
  font-family: "FT Regola Neue", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.75em;
  color: var(--foo-violet);
  white-space: nowrap;
}
header nav ul li a {
  color: inherit;
  text-transform: lowercase;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  header nav {
    order: 11;
    flex-flow: column nowrap;
  }
  header nav ul li:not(:has(a)) {
    display: none;
  }
  header h1 {
    order: 1;
  }
}

.menu {
  display: flex;
  flex-flow: column nowrap;
  gap: 8rem;
}
@media screen and (min-width: 48rem) {
  .menu {
    flex-flow: row wrap;
  }
}
.menu > div {
  display: flex;
  flex-flow: column nowrap;
  gap: 4rem;
}

main .first {
  display: flex;
  flex-flow: column nowrap;
  margin-bottom: 5rem;
}
@media screen and (min-width: 48rem) {
  main .first {
    flex-flow: row wrap;
    gap: 5rem;
  }
  main .first > div {
    flex: 0 1 calc(50% - 5rem);
  }
  main .first > div:nth-child(2) {
    order: -1;
    flex: 0 1 calc(100% - 5rem);
  }
  main .first > div:nth-child(3) {
    margin-top: 9rem;
  }
  main .first .day-time {
    display: none;
  }
}

body:not(.js) #page-menu {
  position: relative;
  top: initial;
  right: initial;
  bottom: initial;
  left: initial;
}
body:not(.js) #page-menu header {
  display: none;
}

body.js #page-menu {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0 2rem 2rem;
  background-color: #EAE7DC;
  pointer-events: none;
  z-index: -1;
}
@media all and (min-width: 512px) {
  body.js #page-menu {
    padding: 0 var(--foo-side-padding) 4rem;
  }
}
body.js #page-menu.active {
  display: block;
  pointer-events: all;
  z-index: 1234567;
  overflow: hidden auto;
}
body.js #page-menu header {
  margin-bottom: 6rem;
}

body:has(#page-menu.active) {
  overflow: hidden;
}

/*# sourceMappingURL=index.css.map */
