@charset "UTF-8";

/* Font-Face */
@font-face {
  font-family: AmericanType;
  src: url(../font/AmericanTypeItcTOT-MediCond.otf) format("opentype");
  font-weight: normal;
}
@font-face {
  font-family: AmericanType;
  src: url(../font/AmericanTypeItcTOT-BoldCond.otf) format("opentype");
  font-weight: bold;
}
@font-face {
  font-family: AmericanType;
  src: url(../font/AmericanTypeItcTOT-MediItal.otf) format("opentype");
  font-style: italic;
}
@font-face {
  font-family: AmericanType;
  src: url(../font/AmericanTypeItcTOT-BoldItal.otf) format("opentype");
  font-style: italic;
  font-weight: bold;
}

@font-face {  /* NADPISY */
  font-family: WoodType;
  src: url(../font/WoodTypeURWDOT-Regular.otf) format("opentype");
  font-style: normal;
}

@font-face {  /* Podnadpis */
  font-family: Xirwena;
  src: url(../font/xirwena1.ttf) format("truetype");
  font-style: normal;
}

body {
  --nav-height: 40px;
  padding-top: var(--nav-height);
  font-size: 16px;
  margin: 0;
  background-color: #eee;
  border-left: 9px hsla(341.8, 99%, 80%, 0) solid;
  border-right: 9px hsla(341.8, 99%, 80%, 0) solid;
  border-bottom: 9px hsla(341.8, 99%, 80%, 0) solid;
  /*
  background-image: url("../obrazky/steampunk-background.png");
  background-repeat: repeat;
  background-attachment: fixed; */
}

/* ScrollBars */
body::-webkit-scrollbar {
  width: 15px;
}
body::-webkit-scrollbar-track {
  background-color: hsl(42, 53%, 20%);
}
body::-webkit-scrollbar-thumb {
  background-color: hsl(33, 60%, 50%);
  border-radius: 15px;
}

/* Basic Selectors */
*,
*::before,
*::after {
  box-sizing: border-box;
}

p, ol, ul, label, table {
  font-family: AmericanType, serif;
  font-style: normal;
  letter-spacing: .15rem;
}
input {
  font-family: AmericanType, serif;
  font-style: normal;
  letter-spacing: .05rem;
}

strong, button {
  font-family: AmericanType, serif;
  font-weight: bold;
  letter-spacing: .2rem;
}

em {
  font-family: AmericanType, serif;
  font-style: italic;
  letter-spacing: .2rem;
}

@media screen and (max-width: 249px) {
  p, ol, ul, label, table, input, textarea, strong, button, em {
    font-size: .7rem;
  }
}
@media screen and (min-width: 250px) and (max-width: 399px) {
  p, ol, ul, label, table, input, textarea, strong, button, em {
    font-size: .8rem;
  }
}
@media screen and (min-width: 400px) and (max-width: 499px) {
  p, ol, ul, label, table, input, textarea, strong, button, em {
    font-size: .9rem;
  }
}
@media screen and (min-width: 500px) and (max-width: 749px) {
  p, ol, ul, label, table, input, textarea, strong, button, em {
    font-size: 1rem;
  }
}
@media screen and (min-width: 750px) and (max-width: 1099px) {
  p, ol, ul, label, table, input, textarea, strong, button, em {
    font-size: 1.1rem;
  }
}
@media screen and (min-width: 1100px) {
  p, ol, ul, label, table, input, textarea, strong, button, em, button {
    font-size: 1.2rem;
  }
}

.Centruj {
  text-align: center;
}

.MezeraNad {
  margin-top: 20px;
}

/* Links */
a, a:visited {
  font-family: AmericanType, serif;
  font-weight: bold;
  letter-spacing: .2rem;
  text-decoration: none;
  color: hsl(175, 50%, 45%);
}
a:hover {
  color: darkgoldenrod;
}
a:active {
  color: darkred;
}

/* NADPISY */
h1, h2, h3, h4 {
  font-family: WoodType, fantasy;
  font-style: normal;
  letter-spacing: .5rem;
  margin-bottom: .3rem;
  margin-top: 1rem;
}

h2 + ol, h2 + ul, h2 + p,
h3 + ol, h3 + ul, h3 + p {
  margin-top: .3rem;
}

.UnderHeadline {  /* Podnadpis */
  font-family: Xirwena, cursive;
  letter-spacing: .3rem;
  font-style: normal;
  margin-top: 0;
  padding-bottom: 6rem;
  color: hsl(39.4, 100%, 65%);
}

@media only screen and (max-width: 299px) {
  h1 { font-size: 1.3rem; letter-spacing: .1rem; }
  .UnderHeadline { font-size: 1rem; }
  h2 { font-size: 1.2rem; }
  h3 { font-size: 1.1rem; }
  h4 { font-size: 1rem; }
}
@media only screen and (min-width: 300px) and (max-width: 399px) {
  h1 { font-size: 1.4rem; letter-spacing: .2rem; }
  .UnderHeadline { font-size: 1.1rem; }
  h2 { font-size: 1.4rem; }
  h3 { font-size: 1.3rem; }
  h4 { font-size: 1.2rem; }
}
@media only screen and (min-width: 400px) and (max-width: 649px) {
  h1 { font-size: 1.8rem; letter-spacing: .4rem; }
  .UnderHeadline { font-size: 1.3rem; }
  h2 { font-size: 1.7rem; }
  h3 { font-size: 1.5rem; }
  h4 { font-size: 1.3rem; }
}
@media only screen and (min-width: 650px) and (max-width: 999px) {
  h1 { font-size: 2.3rem; letter-spacing: .6rem; }
  .UnderHeadline { font-size: 1.7rem; }
  h2 { font-size: 1.9rem; }
  h3 { font-size: 1.5rem; }
  h4 { font-size: 1.3rem; }
}
@media only screen and (min-width: 1000px) and (max-width: 1299px) {
  h1 { font-size: 2.6rem; letter-spacing: .8rem; }
  .UnderHeadline { font-size: 2.1rem; }
  h2 { font-size: 2rem; }
  h3 { font-size: 1.7rem; }
  h4 { font-size: 1.4rem; }
}
@media only screen and (min-width: 1300px) {
  h1 { font-size: 3.7rem; letter-spacing: 1rem; }
  .UnderHeadline { font-size: 2.4rem; }
  h2 { font-size: 2.2rem; }
  h3 { font-size: 1.8rem; }
  h4 { font-size: 1.5rem; }
}

h1, h2, h3, h4, .UnderHeadline, p {
  text-align: center;
}

/* Buttons */
button {
  display: block;
  margin: .5rem auto;
  color: hsl(175, 50%, 45%);
  font-weight: bold;
  background-color: hsl(39.4, 80%, 80%);
  padding: .4rem .8rem;
  border: hsl(39.4, 100%, 55%) 4px solid;
  border-radius: .5rem;
  cursor: pointer;
}

button:hover {
  border: 4px hsl(341.8, 70%, 60%) solid;
  color: white;
  background-color: #555;
}
button:active {
  border: 4px #777 solid;
  color: black;
  background-color: hsl(341.8, 70%, 60%);
}

button + p {
  margin-top: 0;
  padding-top: 0;
  font-size: .9rem;
}

/* PAGE lAYOUT */
/* #Header Dekorace */
header.Header {
  background-color: #000;
  padding: 0 4rem;
  border-radius: 6px;
  position: relative;
}
@media screen and (max-width: 1149px) {
  header.Header {
    margin-top: 0;
  }
}
@media screen and (min-width: 1150px) {
  header.Header {
    margin-top: 1rem;
  }
}
header.Header h1 {
  font-weight: normal;
  text-transform: uppercase;
  text-align: center;
  padding-top: 4rem;
  color: hsl(39.4, 100%, 65%);
}

header.Header img[alt*="psi"], header.Header img[alt*="kun"] {
  position: absolute;
  bottom: 0;
  z-index: 2;
}
header.Header img[alt*="psi"] {
  left: 0;
}
header.Header img[alt*="kun"] {
  right: 0;
}

@media screen and (max-width: 799px) {
  header.Header img[alt*="psi"] {
    width: 34%;
  }
  header.Header img[alt*="kun"] {
    width: 29%;
  }
}
@media screen and (min-width: 800px) and (max-width: 999px) {
  header.Header img[alt*="psi"] {
    width: 27%;
  }
  header.Header img[alt*="kun"] {
    width: 22%;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1099px) {
  header.Header img[alt*="psi"] {
    width: 25%;
  }
  header.Header img[alt*="kun"] {
    width: 20%;
  }
}
@media screen and (min-width: 1100px) and (max-width: 1449px) {
  header.Header img[alt*="psi"] {
    width: 22%;
  }
  header.Header img[alt*="kun"] {
    width: 17%;
  }
}
@media screen and (min-width: 1450px) {
  header.Header img[alt*="psi"] {
    width: 21%;
  }
  header.Header img[alt*="kun"] {
    width: 16%;
  }
}

main.Main {
}

article {
  background-color: hsl(190, 45%, 85%);
  padding: .4rem;
  margin-top: 2rem;
  border-radius: 6px;
}
article:first-of-type {
  margin-top: 2rem;
}

footer.Footer {
  background-color: #000;
  color: hsl(39.4, 100%, 65%);
  margin-top: 3rem;
  padding-top: .4rem;
  border-radius: 6px;
}
  footer.Footer section.Centruj {
    color: #888;
  }

  footer.Footer p[lang='en'] {
    margin-bottom: 0;
    background-color: hsl(39.4, 80%, 80%);
    padding: .5rem;
    border-radius: 6px;
    color: #000;
  }
  footer.Footer p[lang='en'] a {
    color: hsl(175, 50%, 45%);
  }
  footer.Footer p[lang='en'] a:hover {
    color: darkgoldenrod;
  }
  footer.Footer p[lang='en'] a:active {
    color: darkred;
  }

/* #Galerie */
article.Galerie {
  color: #000;
  background-color: #fff;
}

/* #Nabidka ol */
@media screen and (max-width: 699px) {
  #Nabidka ol {
    width: 89%;
    margin-left: 10%;
  }
}
@media screen and (min-width: 699px) and (max-width: 999px) {
  #Nabidka ol {
    width: 79%;
    margin-left: 20%;
  }
}
@media screen and (min-width: 1000px) {
  #Nabidka ol {
    width: 65%;
    margin-left: 32%;
  }
}

/* NAV */
nav, nav ul, nav ol, nav a {
  font-family: AmericanType, serif;
  font-style: bold;
  letter-spacing: 0;
}
/* NAV MOBILE */
@media only screen and (max-width: 1149px) {

  /* Style the navigation menu */
  nav.Mobile {
    position: fixed;
    top: 0;
    right: 0;
    width: 74%;
    z-index: 3;
    padding-left: 1rem;
    background-color: transparent;
  }

  /* Hide the links inside the navigation menu (except for logo/home) */
  nav.Mobile #myLinks {
    display: none;
    background-color: #333;
    overflow: hidden;
    width: 100%;
    text-align: center;
  }

  /* Style navigation menu links */
  nav.Mobile a {
    background-color: hsl(39.4, 80%, 80%);
    color: hsl(175, 50%, 45%);
    padding: .4rem;
    border-bottom: 4px solid #666;
    border-left: 4px solid #666;
    border-right: 4px solid #666;
    text-decoration: none;
    font-size: 1.3rem;
    display: block;
  }

  nav.Mobile a.Logo {
    background-color: transparent;
  }

  /* Style the hamburger menu */
  nav.Mobile a.icon {
    background: black;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
  }

  /* Add a grey background color on mouse-over */
  nav.Mobile a:hover {
    background-color: #ddd;
    color: black;
  }

  /* Style the active link (or home/logo) */
  .active {
    background-color: #555;
    color: white;
  }

  /* nav Computer */
  nav.Nav {
    display: none;
  }

}  /* End of max-width: 1149px */

/* HORIZONTAL NAV */
@media only screen and (min-width: 1150px) {

  nav.Nav {
    width: 100%;
    height: var(--nav-height);
    position: fixed;
    top: 0;
    left: 0;
    background-color: hsla(341.8, 92%, 84%, 0);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s;
    z-index: 3;
  }
  .NavLink {
    font-size: 1.3rem;
    text-decoration: none;
    margin: 0 .5rem;
    color: hsl(175, 50%, 45%);
    background-color: hsl(39.4, 80%, 80%);
    border: 4px solid #666;
    padding: .2rem .5rem;
    border-radius: .5rem;
  }
  a.NavLink:hover {
    border: 4px hsl(341.8, 70%, 60%) solid;
    color: white;
    background-color: #555;

  }
  a.NavLink:active {
    border: 4px black solid;
    color: black;
    background-color: hsl(341.8, 70%, 60%);
  }

  .NavHidden {
    transform: translateY(calc(-1 * var(--nav-height)));
    box-shadow: none;
  }

  nav.Mobile {
    display: none;
  }

}  /* End of min-width: 1150px */




