/* ZÁKLAD */
* { box-sizing: border-box; }
body {
  margin: 0;
  padding: 0;
  background: #0e5486;
}

/* HLAVIČKA / HERO */
.main-nad {
  font-family: 'Calibri', sans-serif;
  margin: 0;
  padding: 0;
  background: #11377e url("images/back-page-2.jpg") no-repeat;
  background-size: cover;
  background-attachment: fixed;
  height: 100%;
}

.main-nad-in {
  width: 100%;
  height: 450px;
  margin: 0 auto;
  text-align: left;
  letter-spacing: 0;
}

.hero-logo{
  display: block;
  width: clamp(120px, 20vw, 240px);  /* responzivní šířka loga */
  height: auto;
  margin: 0 0 12px 0;               /* mezera pod logem */
}



/* === OPRAVENÉ CENTROVÁNÍ === */
.main-nad-bottom{
  width: 100%;
  height: 23px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: center;   /* vodorovně na střed */
  align-items: center;       /* svisle na střed */
  background: url("images/-stred.gif") no-repeat center bottom;
}
.main-nad-bottom a{
  display: block;
  width: 38px;
  height: 23px;
  background: url("images/but1.gif") no-repeat center;
  border: 0;
  margin: 0;
  padding: 0;
}
.main-nad-bottom a:link,
.main-nad-bottom a:visited{
  background-image: url("images/but1.gif");
}
.main-nad-bottom a:hover{
  background-image: url("images/but2.gif");
}

.main-nad-in h1{
  margin: 0;
  padding: 2% 0 0 5%;
  font-weight: bold;
  font-size: 4em;
  color: #fff;
  font-family: 'Roboto Condensed', sans-serif;
  
}
.main-nad-in h2{
  font-family: 'Roboto Condensed', sans-serif;
  margin: 0;
  padding: 0 0 0 5%;
  font-size: 1.4em;
  color: #fff;
  letter-spacing: 8px;
}

/* HLAVNÍ OBSAH */
.main {
  margin: 0;
  padding: 0;
  background: #fff url("images/back-small.jpg");
}
.text-main-page h2{
  font-family: 'Roboto Condensed', sans-serif;
  margin: 0;
  padding: 0;
  font-size: 1.8em;
  color: #000;
  letter-spacing: 4px; /* oprava 4x -> 4px */
  text-align: center;
}

.main-in {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  margin-top: 0;
  text-align: left;
  padding: 0;
  letter-spacing: 0;
}

.text-main-page{ margin: 0; padding: 4% 5% 5% 5%; }
.text-main-page p{
  margin: 0;
  padding: 8px 0;
  font-size: 1.6em;
  text-align: center;
  font-family: 'Calibri', sans-serif;
}
.text-main-page a:link,
.text-main-page a:visited{ color: #0e5486; text-decoration: underline; }
.text-main-page a:hover{ color: #0e5486; text-decoration: none; }

.text-main-page-down,
.text-main-page-down2,
.text-main-page-down-3 {
  margin: 0; padding: 5%;
  font-family: 'Calibri', sans-serif;
}
.text-main-page-down { background: #666; }
.text-main-page-down2 { background: #fff url("images/back-small.jpg"); }
.text-main-page-down-3 { background: #d6e6eb; }

.text-main-page-down-in,
.text-main-page-down-in2,
.text-main-page-down-in-3 {
  width: 100%; height: 100%; margin: 0 auto; margin-top: 0;
}
.text-main-page-down-in p,
.text-main-page-down-in2 p,
.text-main-page-down-in-3 p {
  margin: 0; padding: 3px 0 0 0; font-size: 20pt; text-align:center;
}
.text-main-page-down-in p { color: #fff; }
.text-main-page-down-in2 p,
.text-main-page-down-in-3 p { color: #333; }

.text-main-page-down-in a:link,
.text-main-page-down-in a:visited { color: #ffffcc; text-decoration: underline; }
.text-main-page-down-in a:hover { color: #fff; text-decoration: none; }

.text-main-map { width:100%; height:340px; margin:10px 0 0 0; }

/* Patička / sekce pod obsahem */
.main-pod {
  width: 100%; height: 100%;
  font-family: 'Calibri', sans-serif;
  margin: 0; padding: 10px 0 0 0;
  color: #fff; font-size: 1.2em;
}
.main-pod-leva { width: 60%; float:left; padding-left: 5%; }
.main-pod-prava { width: 35%; float:left; text-align: center; }
.main-pod-prava img { margin: 25% 0; }

.main-pod a:link,
.main-pod a:visited { color: #d3e8f7; text-decoration: underline; }
.main-pod a:hover { color:#fff; text-decoration: none; }

.main-pod-in-pr { width: 35%; float:left; padding: 20px 0; }

.pruh { margin: 0; padding: 0; background-color: #0a3758; }
.pruh-in { width:100%; height:100%; margin: 0 auto; }
.pruh-in p {
  margin: 0; padding: 1% 0 1% 5%;
  color: #d3e8f7; font-size: .9em; font-family: 'Calibri', sans-serif;
}
.pruh-in a:link, .pruh-in a:visited { color: #d3e8f7; text-decoration: underline; }
.pruh-in a:hover { color:#fff; text-decoration: none; }

.clear { clear: both; }
.dontscreen { display: none; }

/* --------------- COOKIE UI --------------- */

/* Cookie lišta dole */
.cookie-bar{
  position: fixed; left: 0; right: 0; bottom: 0;
  background: #2e5aa3; color: #fff; padding: 16px;
  font-family: Arial, sans-serif; z-index: 9998;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.cookie-bar .buttons button{
  background:#fff; color:#2e5aa3; border:0; padding:8px 14px;
  border-radius:4px; cursor:pointer;
}

/* Modal s nastavením */
#cookie-modal{
  position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 10000;
  display: flex; align-items: center; justify-content: center;
}
.cookie-modal-content{
  background:#fff; color:#222; padding:20px; width: min(520px, 92vw);
  border-radius:8px; font-family: Arial, sans-serif;
}
.cookie-modal-content .buttons{
  margin-top: 12px; display:flex; gap:8px; flex-wrap:wrap;
}
.cookie-modal-content .buttons button{
  padding:8px 14px; border-radius:4px; border:0; cursor:pointer;
}
#btn-allow-all{ background:#2e5aa3; color:#fff; }
#btn-reject-all{ background:#e53935; color:#fff; }
#btn-save, #btn-close{ background:#eee; }

/* Skrytý banner / modal nesmí chytat kliky */
#cookie-modal[hidden], #cookie-banner[hidden]{
  display: none !important;
  pointer-events: none !important;
}

/* Plovoucí tlačítko pro otevření nastavení */
#cookie-fab{
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  /* automaticky nad safe-area a (pokud je vidět) nad cookie lištou */
  bottom: calc(
    max(16px, env(safe-area-inset-bottom))
    + var(--cookie-bar-offset, 0px)
  );
  width: 52px; height: 52px;
  background:#2e5aa3; color:#fff; font-size:22px; line-height:1;
  border-radius: 50%; display:flex; align-items:center; justify-content:center;
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
  cursor: pointer; z-index: 9999;
  transition: transform .15s ease, background .2s ease;
}
#cookie-fab:hover{ background:#1d3d70; transform: translateY(-2px); }
#cookie-fab:focus-visible{
  outline: 3px solid #fff; outline-offset: 2px;
}

/* Když je cookie lišta viditelná (není [hidden]), posuň FAB výš */
body:has(#cookie-banner .cookie-bar):not(:has(#cookie-banner[hidden] .cookie-bar)) #cookie-fab{
  --cookie-bar-offset: 72px; /* výška lišty + mezera */
}

/* Na menších displejích FAB výš, kvůli systémovým prvkům */
@media (max-width: 600px){
  #cookie-fab{
    bottom: calc(
      max(20px, env(safe-area-inset-bottom))
      + var(--cookie-bar-offset, 0px)
    );
    right: max(16px, env(safe-area-inset-right));
  }
}


/* Skryj FAB, když je cookie lišta viditelná */
body:has(#cookie-banner:not([hidden]) .cookie-bar) #cookie-fab {
  display: none !important;
}