.logged-in  header{
	top: 18px;
}
.logged-in.role-clen_akv  header{
	top: 0px;
}

.about__textbox, .blockquote__textbox {
    font-size: 16px;
}
.no{
	margin-right: 20px;
}
.mt30{ margin-top: 30px}
.section--peoples{
	 margin-top: 0;
}
.about__textbox *{
	line-height: 1.4em;
}
.subpage-hero__box h1{
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
}
.det{
    margin-bottom: 30px;
}
.det strong{
    display: block;
}
.smallpadb{
    margin-bottom: 15px;
}

/* Form updates */
.form__item br{
	display: none;
}

.form > div{
	display: flex;
    flex-direction: column;
    gap: 26px;
}

.form select{
	height: 47px;
    border: 0;
    min-width: 122px;
    z-index: 6;
	padding: 0 40px 0 18px;
	cursor: pointer;
	appearance: none;
}

.form select:focus{
	outline: none;
}

.form__item span:has(select){
	display: inline-block;
}

.form .wpcf7-not-valid-tip{
	font-size: 14px;
    padding: 5px 0 0 0;
}

.form__item span:has(select):before{
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 10px solid #212946;
    border-bottom: 0;
    position: absolute;
    right: 17px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
	pointer-events: none;
}

.form .checkbox br{
	display: none;
}

.form .checkbox:has(input:checked) .checkbox__checkmark:before{
	opacity: 1;
}

.form .checkbox{
	flex-direction: row-reverse;
	justify-content: flex-end;
	cursor: pointer;
}

.form .checkbox label{
	margin: 0;
	cursor: pointer;
}

.form .checkbox .wpcf7-list-item{
	margin: 0;
}

.form__bottom span:has(> input){
	display: inline-block;
	position: relative;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output{
	margin: 20px 0 0 0;
    color: #fff;
    background: #dc3232;
    border-color: #dc3232;
    padding: 15px;
    text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output{
	background: #46b450;
	border-color: #46b450;
}

.form p{
	margin: 0;
}

.form__bottom span input{
	z-index: 5;
    color: #fff;
}

.form__bottom .wpcf7-spinner{
	position: absolute;
	right: -60px;
	top: 50%;
	transform: translateY(-50%);
}

.form__bottom span:has(> input):after,
.form__bottom span:has(> input):before{
	content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.form__bottom span:has(> input):before{
	background: linear-gradient(to left, #329626 0, #4bb83d 100%);
    z-index: 1;
}

.form__bottom span:has(> input):after{
	z-index: 1;
    background: #4bb83d;
    opacity: 0;
    transition: opacity .3s;
}

.form__bottom span:has(> input):hover:after{
	opacity: 1;
}

.navigation .wp-paginate{
	display: flex;
	gap: 8px;
}

.navigation .wp-paginate li:first-of-type{
	display: none;
}

.navigation .wp-paginate span,
.navigation .wp-paginate a{
	border: 1px solid #212946;
    background: #212946;
    color: #fff;
    min-width: 40px;
    min-height: 40px;
    display: flex;
    margin: 0;
    padding: 0;
    line-height: 1;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
	transition: color 0.3s, background 0.3s, border-color 0.3s;
}

.navigation .wp-paginate span,
.navigation .wp-paginate a:focus,
.navigation .wp-paginate a:active,
.navigation .wp-paginate a:hover{
	color: #212946;
	border-color: #212946;
	background: transparent;
}

.gallery-detail__title.title{
	margin-bottom: 40px;
}

.gallery-detail__grid{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	padding-bottom: 15px;
}

.gallery-detail__item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1;
}

.gallery-detail__item{
	transition: box-shadow 0.3s;
}

.gallery-detail__item:hover{
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
}

@media(max-width: 767px){
	.gallery-detail__grid{
		grid-template-columns: repeat(2, 1fr);
	}
}



.header__name{
	display: flex;
	align-items: center;
	gap: 5px;
	padding-left: 20px;
	border-left: 1px solid rgba(0, 0, 0, 0.2);
}

.header__member{
	font-size: 15px;
	display: flex;
	align-items: center;
	gap: 20px;
	justify-content: flex-end;
	position: fixed;
	right: 0;
	width: 100%;
    background: #e4ffe0;
    top: 110px;
    padding: 10px 80px;
    border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.login-modal{
  display:none;
  max-width:500px;
  background: #f1f1f1;
  width: 100%;
  padding: 50px;
}

.login-modal__title{
  font-size: 24px;
  font-weight: 800;
  text-align: center;
  margin: 0 0 30px 0;
  color: #212946;
}

.login-modal .login-username,
.login-modal .login-password{
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.login-modal .login-username label,
.login-modal .login-password label,
#form-in label{
  margin: 0;
    font-size: 15px;
    font-weight: 500;
    color: #212946;
    display: block;
}

.login-modal .login-username input,
.login-modal .login-password input,
#form-in .login-username input,
#form-in .login-password input{
  height: 47px;
    width: 100%;
    background: #fff;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 0 16px;
    -webkit-transition: -webkit-box-shadow .3s;
    transition: box-shadow .3s;
    transition: box-shadow .3s, -webkit-box-shadow .3s;
}

.login-modal .login-username input:focus,
.login-modal .login-password input:focus{
  outline: none;
}

.login-modal .login-remember label{
  font-size: 13px;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    padding: 0 0 0 27px;
    position: relative;
    color: #212946;
}

.login-modal .login-remember input{
  display: none;
}

.login-modal .login-remember label:before{
  content: "";
  background: #fff;
    width: 17px;
    height: 17px;
    border: 1px solid #212946;
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: absolute;
    left: 0;
    top: 1px;
}

.login-modal .login-remember label:after{
  content: "";
    width: 11px;
    height: 11px;
    position: absolute;
    top: 4px;
    left: 3px;
    background: #212946;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

.login-modal .login-remember label:has(input:checked):after{
  opacity: 1;
}

.login-modal .login-submit input, #form-in input[type=submit]{
  border: 1px solid #212946;
    background: #212946;
    color: #fff;
    padding: 10px 15px;
    cursor: pointer;
    transition: background 0.3s, color 0.3s;
}

.login-modal .login-submit input:hover{
  background: transparent;
  color: #212946;
}


.member-login{
  max-width: 500px;
  margin: 0 auto;
  background: #f1f1f1;
  padding: 30px;
}

.member-login label{
  margin: 0 0 15px;
    font-size: 15px;
    font-weight: 500;
    display: block;
}

.member-login input[type="password"],
.member-login input[type="email"],
.member-login input[type="text"]{
  height: 47px;
    width: 100%;
    background: #fff;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 0 16px;
}

.member-login input[type="submit"]{
  border: 1px solid #212946;
    background: #212946;
    color: #fff;
    padding: 10px 15px;
    cursor: pointer;
    transition: background .3s, color .3s;
}

.member-login input[type="submit"]:hover{
  background: transparent;
  color: #212946;
}

.member-login input:focus{
  outline: none;
}

.member-login .login-remember input{
  display: none;
}

.member-login .login-remember label:before{
  content: "";
  background: #fff;
    width: 17px;
    height: 17px;
    border: 1px solid #212946;
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: absolute;
    left: 0;
    top: 1px;
}

.member-login .login-remember label:after{
  content: "";
    width: 11px;
    height: 11px;
    position: absolute;
    top: 4px;
    left: 3px;
    background: #212946;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

.member-login .login-remember label:has(input:checked):after{
  opacity: 1;
}
.member-login .login-remember label{
  font-size: 13px;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    padding: 0 0 0 27px;
    position: relative;
    color: #212946;
}
#loginform input.input{
    background: #ebebeb;
    border: 1px solid #ddd;
}
#form-in {
    max-width: 600px;
    margin: 0 auto;
    padding: 50px;
    background: #fcfcfc;
    border: 1px solid #ddd;
}
#form-in label{
    margin-bottom: 15px;
}
.login-error {
    color: red;
    background: #ffeaea;
    padding: 10px;
    max-width: 600px;
    text-align: center;
    margin: 0 auto 1em;
    border: 1px solid #ffaaaa;
}
.members-login-notice,
.members-login-error {
    display: none;
}
.header-nav .sub-menu .header-nav__opener{
	display: flex;
}
.header-nav  {
       z-index: 999;
}
.header-nav  > ul > li {
    padding: 10px 0;
    height: 30px;
    z-index: 999;
}
.header-nav  > ul > li a{
   display: block;
}
.header-nav ul .sub-menu li a:hover,
.header-nav ul li.current_page_ancestor > a{
   color: #329626;
}
.header-nav ul .menu-item-has-children:hover .sub-menu .sub-menu{
    display: none;
    opacity: 0;
}
.header-nav ul li li{
    font-size: 85%;
}

.header-nav ul .menu-item-has-children:hover .sub-menu,
.header-nav ul .menu-item-has-children:hover .sub-menu .menu-item-has-children:hover .sub-menu{
    display: flex;
    opacity: 1;
    top: 25px!important;
    z-index: 999;
    pointer-events: auto;
}
.header-nav ul .menu-item-has-children:hover .sub-menu .menu-item-has-children:hover .sub-menu{
    top: -10px!important;
}
.header-nav__opener.dropdown__btn{
    transform: rotate(-90deg);
    transform-origin: top 0;
}

.subpage-hero__bg{
    z-index: 1;
}

.header__logmem{
	display: flex;
	align-items: center;
	gap: 20px;
}

.header-nav ul li.mob-visible{
	display: none;
}
@media(max-width: 767px){
	.header-nav ul li.mob-visible{
		display: block;
	}	
}

/* ============================================================================
   AKV PRÁVO — mobilní menu, „světlejší styl" (varianta C)
   ----------------------------------------------------------------------------
   Týká se POUZE mobilu/tabletu: vše je uvnitř @media (max-width:1023px).
   Desktopové menu (min-width:1024px) zůstává beze změny.
   Spolupracuje s kódem na konci script.js (sloučí účet do panelu).
   POZN.: Tento blok nahrazuje dřívější dva bloky @media (max-width:1024px)
   s pravidly .header__member / .logged-in .header__box .header-nav atd.
   ============================================================================ */

@media (max-width: 1023px) {

  /* skrytí WP admin baru na mobilu (přeneseno z původního kódu) */
  html { margin: 0 !important; }
  html #wpadminbar { display: none; }

  /* ---- CELÝ PANEL = jedno bílé, scrollovací okno ------------------------ */
  .header__box > .header-nav {
    position: fixed;
    left: 0;
    top: 70px;
    width: 100%;
    height: calc(100dvh - 70px);
    margin: 0;
    padding: 0 !important;
    background: #fff !important;
    display: block;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
  }
  body.nav-is-open .header__box > .header-nav {
    opacity: 1;
    pointer-events: auto;
  }
  .logged-in .header__box > .header-nav,
  .is-scrolled.logged-in .header__box .header-nav { padding-top: 0 !important; }
  .logged-in header { top: 0 !important; }

  /* ---- ÚČET / ČLENSKÁ SEKCE = zelená hlavička navrchu panelu ------------ */
  /* .header__member je na mobilu přesunut na začátek .header-nav (script.js) */
  .header__member {
    position: static !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    width: 100%;
    top: auto;
    right: auto;
    border: 0;
    gap: 0;
    padding: 0;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch;
    background: linear-gradient(135deg, #329626, #2b8420);
  }
  .header__logmem {
    order: -1;
    background: transparent;
    color: #fff;
    padding: 11px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .2);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .header__logmem a { color: #fff; display: flex; }
  .header__name { padding: 0; border: 0; display: flex; align-items: center; gap: 11px; }
  .header__name strong { color: #fff; font-size: 14.5px; }
  .header__name img, .header__name svg { flex: 0 0 auto; }
  .header__member img { filter: brightness(0) invert(1); }

  .header__member > .header-nav {
    position: static !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible;
    background: transparent;
    padding: 3px 0 5px;
    border: 0;
    opacity: 1;
    pointer-events: auto;
  }
  .header__member .header-nav ul { flex-direction: column !important; align-items: stretch !important; gap: 0 !important; }
  .header__member .header-nav li { width: 100%; }
  .header__member .header-nav li a {
    display: block;
    color: #fff !important;
    font-size: 13.5px !important;
    font-weight: 600;
    padding: 7px 16px !important;
  }

  /* ---- HLAVNÍ NAVIGACE = bílý seznam, navy text ------------------------- */
  .header__box > .header-nav .menu-hlavnimenu-container { width: 100%; }
  .header__box > .header-nav > .menu-hlavnimenu-container > ul {
    display: block;
    margin: 0;
    padding: 4px 0 24px;
  }
  .header-nav ul li {
    display: block;
    width: 100%;
    border: 0;
    justify-content: flex-start;
  }
  .header__box > .header-nav > .menu-hlavnimenu-container > ul > li {
    border-bottom: 1px solid #edefec;
  }
  .header-nav ul li a {
    display: block;
    color: #212946;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 16px;
    text-decoration: none;
    transition: color .2s;
  }

  /* řádek s podmenu: text vlevo, chevron vpravo */
  .header-nav ul li.menu-item-has-children {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    text-align: left !important;
  }
  .header-nav .menu-item-has-children > a { flex: 1 1 auto; width: auto; text-align: left !important; }

  .header-nav .header-nav__opener.dropdown__btn,
  .header-nav .menu-item-has-children.is-open > .header-nav__opener.dropdown__btn {
    flex: 0 0 auto;
    width: 44px;
    height: 47px;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    transform: none !important;
    transform-origin: center !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }
  .header-nav .header-nav__opener.dropdown__btn::before {
    content: "" !important;
    display: block;
    width: 9px;
    height: 9px;
    margin-top: -3px;
    border: solid #9aa0aa !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg);
    transition: transform .25s ease;
  }
  .header-nav .menu-item-has-children.is-open > .header-nav__opener.dropdown__btn::before {
    margin-top: 3px;
    transform: rotate(-135deg);
    border-color: #329626 !important;
  }
  .header-nav .menu-item-has-children.is-open > a { color: #329626; }

  /* ---- PODMENU = odsazení + vodicí linka, BEZ tmavých ploch ------------- */
  .header-nav .sub-menu {
    flex: 0 0 calc(100% - 16px);
    max-width: calc(100% - 16px);
    width: auto;
    display: none;
    background: transparent !important;
    box-shadow: none !important;
    margin: 0 0 8px 16px !important;
    padding: 0 !important;
    border-left: 2px solid #e2e6e0;
    opacity: 1 !important;
    pointer-events: auto !important;
    top: auto !important;
  }
  .header-nav .menu-item-has-children.is-open > .sub-menu { display: block; }
  .header__box > .header-nav .sub-menu li a {
    color: #41495a;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 14px !important;
  }
  .header-nav ul li.mob-visible { display: block; }
  .header-nav .sub-menu .mob-visible > a { color: #212946; font-weight: 700; }
  .header-nav .sub-menu .sub-menu { flex: 0 0 calc(100% - 14px); max-width: calc(100% - 14px); margin-left: 14px !important; border-left-color: #e8ebe6; }
  .header-nav .sub-menu .sub-menu li a { color: #5b6470; font-size: 14px; }

  /* ---- AKTIVNÍ STRÁNKA -------------------------------------------------- */
  .header__box > .header-nav .menu-hlavnimenu-container > ul > li.current-menu-item,
  .header__box > .header-nav .menu-hlavnimenu-container > ul > li.current_page_item,
  .header__box > .header-nav .menu-hlavnimenu-container > ul > li.current-menu-parent,
  .header__box > .header-nav .menu-hlavnimenu-container > ul > li.current_page_ancestor {
    box-shadow: inset 3px 0 0 #329626;
  }
  .header__box > .header-nav .menu-hlavnimenu-container ul li.current-menu-item > a,
  .header__box > .header-nav .menu-hlavnimenu-container ul li.current_page_item > a,
  .header__box > .header-nav .menu-hlavnimenu-container ul li.current-menu-parent > a,
  .header__box > .header-nav .menu-hlavnimenu-container ul li.current_page_ancestor > a {
    color: #329626 !important;
  }
  /* zrušení starého bílého podtržení aktivních položek */
  .header-nav ul li.current-menu-parent > a::before,
  .header-nav ul li.current_page_item > a::before,
  .header-nav ul .sub-menu li a:hover::before,
  .header-nav ul li.current_page_ancestor > a::before { display: none !important; }
}

/* ---- POJISTKA: žádné zelené pozadí ve vnořeném mobilním menu ----------- */
@media (max-width: 1023px) {
  .header__box > .header-nav .menu-hlavnimenu-container,
  .header__box > .header-nav .menu-hlavnimenu-container ul,
  .header__box > .header-nav .menu-hlavnimenu-container li,
  .header__box > .header-nav .sub-menu { background-color: transparent !important; }
  .header__box > .header-nav { background-color: #fff !important; }
  .header__box > .header-nav .sub-menu li a { color: #41495a !important; }
  .header__box > .header-nav .sub-menu .mob-visible > a { color: #212946 !important; }
  .header__box > .header-nav .sub-menu .sub-menu li a { color: #5b6470 !important; }
}

