#contacts .main-container {
  background-color: #e5d32e; /* žlutá */
  position: relative;
  z-index: 0;
}

#contacts .main-container .cutout {
  z-index: -1;
  position: absolute;
  left: 0;
  top: 4em;
  width: 40px;
  height: 80px;
  background: white;
  border-radius: 0 999px 999px 0;
  transform: translateY(-50%);
}

#contacts .main-container .cutout.right {
  position: absolute;
  left: 40px;
}

.style-button {
  position: relative;
  overflow: hidden;
  background-color: white;
  transition: background 0.3s;
}

.style-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4.5em;
  height: 100%;
  background-image: repeating-linear-gradient(
    90deg,
#e7d73e 0em 0.5em,	transparent 0.5em 0.8em,
#e7d73e 0.8em 1.21em,	transparent 1.21em 1.6em,
#e7d73e 1.6em 1.92em,	transparent 1.92em 2.4em,
#e7d73e 2.4em 2.63em,	transparent 2.63em 3.2em,
#e7d73e 3.2em 3.34em,	transparent 3.34em 4em,
#e7d73e 4em 4.05em,	transparent 4.05em 4.8em
  );
  transform: translateX(-100%);
  transition: transform 0.5s ease;
  z-index: 0;
}

.style-button:hover::before {
  transform: translateX(0);
}

.style-button a {
  position: relative;
  z-index: 1;
}


.radek {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 20px 0;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-basis: 100%;
}

.cara {
  flex-grow: 1;
  height: 2px;
  background-color: #434c53;
}

.popisek {
  margin-left: 10px;
  white-space: nowrap;
  color: #ff5f15;
}

.main-container .nadpis {
  vertical-align: top;
  margin-right: 2em;
  white-space: nowrap;
}


.osoba-wrap {
	border: 2px solid #FF5F15;
	padding: 18px;
}

/* Výchozí stav: viditelný obsah */
input:not(:checked) ~ .main-container .osoba-wrap {
  display: block;
}
/* Skrytý obsah při zaškrtnutí */
input:checked ~ .main-container .osoba-wrap {
  display: none;
}
/* Text změněn podle stavu checkboxu */
input:not(:checked) + label .popisek::before {
  content: attr(data-zavrit);
}
input:checked + label .popisek::before {
  content: attr(data-otevrit);
}



article h1 {
    font-size: 56px;
    line-height: 64px;
    text-transform: uppercase;
    font-weight: 600;
}


	a {
		color: #E94B35;
		text-decoration: underline;
	}
	a:hover {
		text-decoration: underline;
	}
   body {
      margin: auto;
      font-family: 'Archivo', sans-serif;
      max-width: 1600px;
	  background-color: #fff;
    }
    .header {
      border-bottom: 3px solid #E6D82C;
      padding-bottom: 30px;
      margin-top: 20px;
    }


    .container {
      margin: 0 auto;
      padding: 0 20px;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      height: 80px;
    }
	.logo {
		background: #fff;
	}
    .logo img { display: block; }
    .nav-menu { margin-left: 100px; }
    .nav-menu ul { list-style: none; display: flex; margin: 0; padding: 0; }
    .nav-menu li { margin: 0 15px; }
    .nav-menu a { text-decoration: none; color: #000; font-weight: 500; }
    .active-nav { text-decoration: underline !important; color: #E94B35 !important;  }
    .contact-info { display: flex; align-items: center; margin-left: auto; }
    .contact-item { display: flex; align-items: center; border: 1px solid #E6D82C; padding: 17px 32px; margin-left: 15px; font-weight: 500; }
    .contact-item:first-child { margin-left: 0; }
    .contact-item span { z-index: 1; color: #E94B35; margin-right: 8px; }

    .contact-item2 { display: flex; align-items: center; padding: 17px 32px; margin-left: 15px; font-weight: 500; }
    .contact-item2:first-child { margin-left: 0; }
    .contact-item2::before { content: '■'; color: #E94B35; margin-right: 8px; }


    /* Hero */
    .hero { margin-top: 40px; }
    .hero-container { max-width: 1400px;  padding: 0 20px; display: flex; align-items: center; justify-content: space-between; }
    .hero img {  height: auto; display: block; }

    /* Main */
    .main { max-width: 1400px; margin: 0 auto 100px auto; padding: 0 20px; }
    .main-container { display: flex;  align-items: center; justify-content: space-between; }
    .main-item {
      flex: 1 1 48%;
      display: flex;
      border: 1px solid #E6D82C;
      text-decoration: none;
      color: #000;
      cursor: pointer;
      height: 80px;
    }
    .main-item + .main-item { margin-left: 20px;}
    .main-item-text {
      flex: 1;
      padding: 0 20px;
      display: flex;
      align-items: center;
      font-size: 23px;
      font-weight: 500;
    }
    .main-item-text em { font-style: italic; font-weight: 400; margin-right: 8px; z-index: 1; }
    .main-item-text strong { font-weight: 700; z-index: 1; }
    .main-item-arrow {
      width: 80px;
      border-left: 1px solid #E6D82C;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
    }

    .download-container {  }


	.left-col {
		width: 48%;
		margin-top: 42px;
	}
	.right-col {
		width: 48%;
		margin-top: 42px;
	}


	.left-col-container {
	}
	.right-col-container {
		float: right;
	}
	.jmeno {
		text-transform: uppercase;
		font-weight: 600;
	}
	.osoba {

		line-height: 20px;
	}
	.osoba img {
		width: 200px;
	}
	.asociace {
		margin-top: 23px; border-left: solid 3px; padding-left: 10px;
	}


    .nadpis {
		font-size: 56px; line-height: 64px; text-transform: uppercase; font-weight: 300;
	}
    .nadpis-italic {
		font-size: 56px; line-height: 64px; text-transform: uppercase;  font-weight: 300; font-style: italic; 
	}
    .nadpis-bold {
		font-size: 56px; line-height: 64px; text-transform: uppercase; font-weight: 600;
	}
	.podnadpis {
		font-size: 18px; line-height: 24px;
	}

    .nadpis2-italic {
		font-size: 24px; line-height: 32px; text-transform: uppercase;  font-weight: 300; font-style: italic; 
	}
    .nadpis2-bold {
		font-size: 24px; line-height: 32px; text-transform: uppercase; font-weight: 600;
	}

	.download {
		width: 370px;
		border: 2px solid #000;
		margin: 20px;
		padding: 18px;
		float: left;
	}
	
	.download_name {
		font-size: 18px;
		width: 320px;
		float: left;
	}
	
	.download_info {
		font-size: 12px;
	}
	
	.download_icon {
		float: right;
		
	}
	
	.footer {
		border-top: 3px solid #E6D82C; margin: 120px 0 40px 0; padding-top: 40px;
	}

.tlacitko {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
  padding: 8px;
  width: 187px;
  height: 54px;
  background: #FF5F15;
  color: #fff;

}
.tlacitko:hover {
  background: #e65500; /* jen pro efekt při najetí */
}



/* Celá obrazovka, výchozí skrytá */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  display: none;            /* skrytá, dokud není aktivována :target */
  align-items: center;      /* vertikální centrování obsahu */
  justify-content: center;  /* horizontální centrování */
  z-index: 1000;
}

/* Když je v URL fragment #modal, overlay se ukáže */
.overlay:target {
  display: flex;
}

/* Box s vlastním obsahem */
.modal-content {
  position: relative;
  background: #fff;
  padding: 2rem;
  max-width: 700px;
  width: 90%;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.3);
  /* Nové – omezení výšky a svislý scrollbar */
  max-height: 80vh;      /* výška max. 80 % výšky viewportu */
  overflow-y: auto;      /* zobrazí svislý scrollbar při přetečení */
}

/* Zavírací křížek vpravo nahoře */
.close-button {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  text-decoration: none;
  font-size: 4rem;
  line-height: 1;
  color: #333;
  background: #fcc;
  //padding: 0.4rem 0.9rem;
}

/* Styl odkazu pro otevření */
.open-modal {
  display: inline-block;
  //margin: 2rem;
  //padding: 0.5rem 1.1rem;

  color: #fff;
  text-decoration: none;
  border-radius: 4px;
}
.open-modal:hover {

}

#spolupracujeme  {
	margin-top: 150px;
}

#dokumenty h2 {
	margin-bottom: 0 !important;
}




    .menu-toggle { display: none; font-size: 38px; background: none; border: none; cursor: pointer; }
    @media (max-width: 1000px) {
      .container { flex-wrap: wrap; height: auto; justify-content: space-between; }
      .menu-toggle { display: block; margin-left: auto; }
      .nav-menu { display: none; width: 100%; margin-left: 0; }
      .nav-menu.active { display: flex; flex-direction: column; align-items: center; }
      .nav-menu ul { flex-direction: column; }
      .nav-menu li { margin: 10px 0; font-size: 1.3em}
      .contact-info { display: block; width: 95%; margin-top: 50px;  float: left}
      .contact-item { display: block; margin: 0; width: 80%; font-size: 18px; float: left; padding: 12px}
      .contact-item2 {font-size: 18px; margin: 0; padding: 5px}
      .hero-container { flex-direction: column; }
      .hero img { max-width: 100%; margin-bottom: 20px; }
      .main-container { flex-direction: column; }
      .main-item { flex: none; width: 100%; margin: 0 0 20px 0; height: 60px; }
      .main-item + .main-item { margin-left: 0; }
      .main-item-text { font-size: 1.3rem; padding: 0 16px; }
      .main-item-arrow { width: 60px; }
 
 .page-title {
	 font-size: 28px;
 }
 .nadpis {
		font-size: 22px; line-height: 36px; text-transform: uppercase; font-weight: 300;
	}
    .nadpis-italic {
		font-size: 22px; line-height: 36px; text-transform: uppercase;  font-weight: 300; font-style: italic; 
	}
    .nadpis-bold {
		font-size: 22px; line-height: 36px; text-transform: uppercase; font-weight: 600;
	}	  
	
    .nadpis2-italic {
		font-size: 18px; line-height:22px; text-transform: uppercase;  font-weight: 300; font-style: italic; 
	}
    .nadpis2-bold {
		font-size: 18px; line-height: 22px; text-transform: uppercase; font-weight: 600;
	}
	  
	  	.download {
			width: 80%;
			border: 2px solid #000;
			//margin: 20px;
			float: left;
			padding: 18px;
		}
		
		.download_name {
			font-size: 1.3em;
			width: 70%;
			float: left;
		}
		
		.download_info {
		    margin-top: 12px;
			font-size: 16px;
			float: left;
		}
		
	  	.left-col {
		width: 90%;		
		}

	  	.left-col img {
		width: 90%;		
		}
		
		.right-col {
			width: 90%;
		}
		.right-col img {
			width: 90%;		
		}
		.osoba-wrap {
			float: left;
			width: 80%;
			margin-top: 50px;

		}
		.osoba {
//			margin-top: 62px;
			line-height: 42px;
			font-size: 22px;
		}
		
		.osoba .asociace {
			font-size: 18px;
			line-height: 18px;
		}
		.osoba img {
		width: 70%}
		
		.paticka-goto-top {
			margin-top: 30px
		}
		
		.modal-content {
			width: 90%;
			max-width: 1000px;
		}
}

	
	
