/* HLAVNÍ ROZVRŽENÍ */
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
   background-color: #1D1D1D;
  font-family: 'Helvetica;

}

html, body {
  width: 100%;
  box-sizing: border-box;
  font-family: 'Helvetica;

}
body {
  font-family: Helvetica, Arial, sans-serif;
}
.hlavicka {
  font-family: Helvetica, Arial, sans-serif;
}
.header-nav a  {
  font-family: Helvetica, Arial, sans-serif;
}
h3 {
  font-family: Helvetica, Arial, sans-serif;
}


.aktuality-box {
  background-color: black;
  padding: 1.5em;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  margin-bottom: 2em;
}

.aktuality-seznam p {
  margin-bottom: 1em;
  border-bottom: 1px solid #eee;
  padding-bottom: 0.5em;
  color: #333;
}
/*box celý kalendář*/
.kalendar-box {
  height: auto;
  overflow: visible;
  margin: 0 auto;
}

.rezervace-layout {
  display: grid;
  grid-template-columns: 180px 1fr 280px;
  gap: 20px;
  padding: 20px;
  max-width: 1000px;
  margin: 0 auto;
  background-color: #1D1D1D;
   font-family: 'Helvetica;
}

.hlavicka {
  background-color: #1D1D1D;
  padding: 20px; 20px;0px; 20px; 
  border-bottom: 1px solid #4E4E4E;
  font-family: 'Helvetica;

}

.hlavicka-menu a {
  margin-right: 5px;
  text-decoration: none;
  color: white;
  font-weight: 
 font-family: 'Helvetica;
 font-size:2em;
  padding-top: 10px;
}
@media screen and (min-width: 769px) {
  /* Kontejner pro celé menu vlevo */
  .mobilni-menu {
    display: flex;           /* zajistí správné zobrazení */
    align-items: flex-start; /* umožní posun menu */
    margin-top: 15px; /* zde upravíš výšku posunu dolů */
    
    }

  /* Samotné odkazy/menu uvnitř */
  .mobilni-menu .hlavicka-menu {
    margin-top: 0;  /* vynuluj, aby to nebylo zdvojené */
    display: flex;
    gap: 20px; /* větší mezery mezi odkazy */
  }
}

.leva-strana h3,
.prava-strana h3,
h3 {
  font-size: 18px;
  margin-bottom: 10px;
  color: white;
  font-family: 'Helvetica;
}

#casovy-vyber button {
  display: block;
  margin-bottom: 8px;
  padding: 8px 12px;
  background-color: mintcream;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.stred {
  max-width: 600px;
  margin: 0 auto;
}

.kalendar {
  position: relative;
  height: 600px;
  max-width: 100%;
  margin: 13px auto;
  padding: 40px 20px 20px 20px;
  box-sizing: border-box;
  border-radius: 20px;
  border-style: outset;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  background-image: url('../img/15.jpg');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-color: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(1.5px);
}

.kalendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 7px;
  padding: 10px;
  border-radius: 12px;
  position: relative;
  z-index: 2;
  width: 100%;
  box-sizing: border-box;
  overflow: visible; 
}
.den {
  padding: 10px 0;
  font-size: 1em;
  text-align: center;
  border-radius: 8px;
  font-weight: bold;
  cursor: pointer;
  white-space: nowrap; /* zabrání zalomení */
  overflow: hidden;    /* zabrání přetečení */
  text-overflow: ellipsis; /* přidá ... pokud se nevejde */
}
@media (max-width: 480px) {
  .den {
    font-size: 0.80em;
    padding: 6px 4px;
    overflow: visible; 
  }
}

.kalendar-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.2em;
  padding: 1px; 5px;
  border-radius: 8px;
}
.kalendar-nav a {
  background-color: #4CAF50; /* zelené pozadí */
  color: #fff;               /* bílé šipky */
  padding: 0.2em 0.4em;
  border-radius: 12px;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.1em;
  transition: background-color 0.3s ease;
}

.kalendar-nav a:hover {
  background-color: #45a049;
}


.mesic-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  margin-bottom: 10px;
}

.mesic-nav a {
  font-size: 1.5em;
  color: white;
  text-decoration: none;
}

.mesic-nazev {
  font-size: 1.1em;
  color: white;
  font-weight: bold;
  margin: 0;
}

hlavni-nadpis {
  margin: 0;
  font-size: 2em;
  text-align: center;
  flex-grow: 1;
}
.login-adelka {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.login-adelka a {
  font-size: 0.8em;
  color: #888;
  text-decoration: none;
  padding: 4px 8px;
  border-radius: 12px;
  transition: color 0.3s ease;
}

.login-adelka a:hover {
  color: #444;
  text-decoration: underline;
}
/*struktura pro nadpis menu mobil*/
@media (max-width: 768px) {
  .hlavni-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 20px;
  }

  .header-leva,
  .login-adelka {
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
  }

  
  .header-leva a,
  .login-adelka a {
    font-size: 1em;
    padding: 6px 12px;
  }
}

.prava-strana {
  position: relative;
  top: 70px;
}

.aktuality-box,
.uvitani-box {
  background-color: white;
  border: 1px solid #ddd;
  padding: 15px;
  border-radius: 6px;
  margin-bottom: 20px;
  width: 100%;
  max-width: 320px;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}

.payment-banner img {
    max-width: 150px;
    opacity: 0.7;
  }

  .footer-copy {
    font-size: 12px;
    padding: 10px 0;
  }

.uvitani-box {
  font-size: 15px;
  line-height: 1.5;
  padding: 6px 16px 12px 16px;
  margin: 0 auto;
  max-width: 320px;
  text-align: justify;         /* zarovnání do bloku */
  font-family: 'Helvetica', sans-serif;
}

.uvitani-box h2 {
  font-size: 14px;
  font-weight: bold;           /* tučný nadpis */
  margin: 6px 0 2px 0;         /* malá mezera pod nadpisem */
  color: #043860;
  line-height: 1.4;
  text-align: left;            /* nadpis zůstává vlevo */
}
.uvitani-box {
  max-width: 320px;
  min-width: 280px; /* pomáhá mobilu udržet blokovou strukturu */
   text-align: justify;
  text-justify: inter-word;
}

.uvitani-box p {
  margin: 0;
  font-weight: normal;         /* běžný text */
  color: #333;
}


.section {
  margin-bottom: 20px; /* místo 40px */
}