.btn-vstupenky-new {
    width: 100%;
    font-weight: 500 !important;
    background-color: #263b9e;
    color: white;
    padding: 16px;
    font-size: 17px;
    text-transform: uppercase;
}
.btn-vstupenky-new:hover {
    background-color: #eb0048 !important;
    color: white !important;
}

.btn-primary-wrap input{
    width: 100%;
    font-weight: 500 !important;
}
.btn-primary-wrap input:hover {
    background-color: #eb0048 !important;
    color: white !important;
}

.aktuality-grid {
    margin: 0 auto;
    display: flex;
    gap: 4%;
}

.vc_tta-panel .vc_tta-panel-title a span  {
    color: #263b9e !important;
}
.vc_active .vc_tta-panel-title a span {
    color: #eb0048 !important;
} 
.aktualita-item {
  width: 32%;
  display: flex;
  flex-direction: column;
}

.aktualita-meta {
  margin-top: auto;
}

.aktualita-meta a {
    font-weight: 700;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
}
.aktualita-meta a:hover {
  color: #eb0048;
}
.aktualita-meta a img {
  width: 16px;
}

.aktualita-item h3 {
    margin: 16px 0 16px;
    font-size: 20px;
    line-height: 25px;
}


.aktualita-thumb img {
  width: 100%;
  height: 250px; /* nastavíš podľa potreby */
  object-fit: cover;
  display: block;
  transition: 0.3s all ease;
}

.aktualita-thumb img:hover {
  opacity: 0.8;
}


@media (max-width: 1000px) {
  .aktuality-grid {
    flex-direction: column;
    row-gap: 40px;
  }
  .aktualita-item {
    width: 100%;
  }
}













.scroll-top {
    background-color: #eb0048 !important;
    border-radius: 50% !important;
    width: 60px !important;
    height: 60px !important;
}



.search .page-title {
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 73%, #eef8ff 100%) !important;
}

.search .page-title h1 {
  color: #263b9e !important;
}
.search .page-title span {
    font-weight: 600;
    color: #263b9e !important;
}

.search .entry-title a:hover {
  color: #263b9e !important;
}

.pc-staticky-banner { display: block; }
.mobil-staticky-banner { display: none; }

@media (max-width: 800px) {
  .pc-staticky-banner { display: none; }
  .mobil-staticky-banner { display: block; }
}

.staticky-banner img {
  width: 100%;
}

.banner-2026 {
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 73%, #eef8ff 100%);
  
}

.banner-2026-row {
  display: flex;
  align-items: center;
  gap: 6%;
  width: 1880px;
  padding: 32px 40px;
  margin: 0 auto;
  max-width: 100%;
}

.banner-2026 .leaflet-container {
  background: inherit !important;
}

.banner-2026-left {
  width: 47%;
}

.banner-2026-right {
  width: 47%;
}


.banner-2026-right h1 {
    color: #263b9e;
    font-family: 'Girandengo_Display' !important;
    font-size: 130px;
    line-height: 136px;
    font-weight: 500;
}
.banner-2026-right h1 span{
  color: #eb0047;
}

.banner-2026-right p {
  font-size: 36px;
}

.banner-2026-right a {
    background-color: #263b9e;
    color: white;
    text-decoration: none;
    padding: 20px 60px;
    font-size: 24px;
    display: inline-block;
    margin-top: 40px;
    font-weight: 900;
    transition: 0.3s all 
ease;
}

.banner-2026-right a:hover {
    background-color: #eb0047;
    color: white;
}


@media (max-width: 1605px) { 
  .banner-2026-right h1 {
    font-size: 110px;
    line-height: 106px;
  }
  .banner-2026-right p {
    font-size: 28px;
  }
}

@media (max-width: 1280px) { 
  .banner-2026-right h1 {
    font-size: 92px;
    line-height: 94px;
  }
  .banner-2026-right p {
    font-size: 24px;
  }
}

@media (max-width: 1160px) { 
.banner-2026-left {
  width: 40%;
}

.banner-2026-right {
  width: 54%;
}

}


@media (max-width: 970px) { 
.banner-2026 {
  display: none;
}
}

.banner-2026-mobil { display: none; }

@media (max-width: 970px) {
  .banner-2026 { display: none; }
  .banner-2026-mobil  { display: block;        margin-top: 40px; }
}

.banner-2026-mobil img {
  width: 100%;
}


/* ====== Header bar (fixed top) ====== */
#dev-admin-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: #0d47a1;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
}

#dev-admin-header .logo {
  display: flex;
  align-items: center;
  gap: 12px;
}

#dev-admin-header .logo img {
    height: auto;
    width: auto;
    display: block;
    max-width: 200px;
}

#dev-admin-header .hamburger {
  width: 24px;
  height: 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
}

#dev-admin-header .hamburger span {
  display: block;
  height: 1px;
  background: #fff;
  width: 100%;
}

/* ====== Overlay (behind sidebar) ====== */
#menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}

#menu-overlay.open {
  opacity: 1;
  pointer-events: auto;
  z-index: 9999;
}

/* ====== Sidebar menu panel ====== */
#menu-panel {
  position: fixed;
  top: 0;
  right: -80%;
  height: 100vh;
  width: 80%;
  max-width: 420px;
  background: #0d47a1;
  transition: right .25s ease;
  display: flex;
  flex-direction: column;
  padding: 20px 16px 24px 16px;
  gap: 16px;
  z-index: 9999;
  overflow-y: auto;
  color: #fff;
}

#menu-panel.open {
  right: 0;
}

/* ====== Menu topbar (lang + close) ====== */
.menu-topbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.lang-switch {
  margin-right: auto;
  display: flex;
  gap: 12px;
  font-weight: 600;
}

.lang-switch a {
  color: #fff;
  text-decoration: none;
}

.lang-switch a:hover {
  color: #fff;
  text-decoration: none;
}

.menu-close {
  position: relative;
  width: 30px;
  height: 30px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.menu-close span {
  position: absolute;
  width: 30px;
  height: 1px;
  background: #fff; /* rovnaká farba ako hamburger */
  top: 30%;
  left: 0;
  transform-origin: center;
  transition: transform .2s ease;
}

.menu-close span:first-child {
  transform: rotate(45deg);
}

.menu-close span:last-child {
  transform: rotate(-45deg);
}

/* ====== Primary menu ====== */
#menu-panel nav {
  
}
body.menu-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}
#menu-panel .primary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

#menu-panel .primary-menu .wpml-ls-item {
display: none;
}

#menu-panel .has-heart a {
    position: relative;
    padding-right: 25px;
    width: 100%;
}

#menu-panel .has-heart a::after {
  content: "";
  position: absolute;
  top: 37%;
  right: 9px;
  width: 18px;
  height: 19px;
  background: url(/wp-content/themes/dt-the7/images/heart.svg) no-repeat center / contain;
}

#menu-panel .primary-menu li {
  border-bottom: 1px solid rgba(255,255,255,.2);
}

#menu-panel .primary-menu li a {
  display: block;
  padding: 14px 8px 14px 0;
  text-decoration: none;
  color: #fff;
}

.menu-row {
  display: flex;
  align-items: center;
  gap: 10px;
}


.toggle-arrow:focus {
    outline: none;
}

.toggle-arrow{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:auto;cursor:pointer;transform:rotate(0deg);transition:transform .2s ease;background:inherit;box-shadow:none;border:none}
.toggle-arrow img{display:none}
.toggle-arrow::before{
  content:"";width:18px;height:18px;display:block;
  -webkit-mask:url("https://janacek-brno.cz/wp-content/themes/dt-the7/images/arrow-down.svg") no-repeat center/contain;
          mask:url("https://janacek-brno.cz/wp-content/themes/dt-the7/images/arrow-down.svg") no-repeat center/contain;
  background-color:#fff
}

.sub-menu {
  display: none;
  padding-left: 14px;
}

.sub-open > .sub-menu {
  display: block;
}

.sub-open > .sub-menu li {
      border-bottom: none !important;
}
#search-box input::placeholder { color: #0d47a1; opacity: 1; }
#search-box input::-webkit-input-placeholder { color: #0d47a1; opacity: 1; }
#search-box input:-ms-input-placeholder { color: #0d47a1; opacity: 1; }
#search-box input::-ms-input-placeholder { color: #0d47a1; opacity: 1; }

.sub-open > .menu-row .toggle-arrow {
  transform: rotate(180deg);
}

/* ====== Social icons ====== */
.menu-social {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 8px;
}

.menu-social img {
  display: block;
}

/* ====== Extra links (newsletter, search) ====== */
.menu-links {
  display: flex;
  flex-direction: column;
  margin-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, .2);
}

.menu-links a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
    
    padding: 16px 0;
    font-weight: 400;
}

.menu-links a:hover {
  color: #fff;
}

#open-search {
  position: relative;
}
#open-search::after {
  content: "";
  position: absolute;
  top: 37%;
  right: 9px;
  width: 18px;
  height: 19px;
  background: url(/wp-content/themes/dt-the7/images/search-white.svg) no-repeat center / contain;
}

/* ====== Search overlay ====== */
#search-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 10000;
}

#search-box {
  background-color: #eef9ff;
  display: flex;
  align-items: center;
  gap: 0px;
  width: 290px;
  margin: 0 auto;
}

#search-box input {
  flex: 1;
  border-radius: 6px;
  padding: 20px 12px;
  font-size: 16px;
  background-color: #eef9ff;
  border: none;
  margin-bottom: 0px;
  font-size: 22px;
  width: 220px;
}

#search-box button {
  border: 0;
  background-color: #eef9ff;
  padding: 20px 14px;
  padding: 12px 14px;
  font-weight: 600;
  cursor: pointer;
  width: 70px;
}

#search-box button img {
width: 24px;
}

#search-box button:focus {
outline: none;
}

/* ====== Responsive ====== */
@media(min-width:1025px) {
  #dev-admin-header {
    padding: 0 24px;
  }
}

/* ====== Body offset for fixed header ====== */
body.has-admin-temp-header {

}

/* keď je viditeľný WP admin bar */
body.admin-bar #dev-admin-header {
  top: 46px;
}
body.admin-bar #menu-panel {

}
body.admin-bar.has-admin-temp-header {
  
}


@media screen and (max-width: 992px) { 
  .mobile-header-bar {
    display: none !important;
  }
  #dev-admin-header {
    display: flex !important;
  }
}