@charset "utf-8";
@font-face{font-display: swap;font-family:GP;font-style:normal;font-weight:400;src:local('GP'),url('../fonts/GP-Regular.woff') format('woff')}
@font-face{font-display: swap;font-family:GP;font-style:normal;font-weight:100;src:local('GP'),url('../fonts/GP-Light.woff') format('woff')}
@font-face{font-display: swap;font-family:GP;font-style:normal;font-weight:500;src:local('GP'),url('../fonts/GP-Bold.woff') format('woff')}
@font-face{font-display: swap;font-family:GP;font-style:normal;font-weight:600;src:local('GP'),url('../fonts/GP-Bold.woff') format('woff')}
/* CSS Document */

:root {
  --font-family: 'Poppins',sans-serif;
  --font-family-2: '', cursive;
  
  --color-black: #000000;
  --color-white: #ffffff;
  --color-dark: #202020;
  --color-light: #f5f5f5;
  --color-one: #003e7e;
  --color-two: #04a0da;

  --text-velikost-1: 11px;
  --text-velikost-2: 15px;
  --text-velikost-3: 18px;
  --text-velikost-4: 22px;
  --text-velikost-5: 28px;
  --text-velikost-6: 13px;	
  --text-velikost-7: 21px;
  --text-velikost-8: 16px;
  
  --text-sirka-1: 200;
  --text-sirka-2: 300;
  --text-sirka-3: 500;	
  --text-sirka-4: 600;
  --text-sirka-5: 700;	
  
  --global-padding-1: 15px;
  --global-padding-2: 7.5px;
  --global-padding-3: 17px 15px;	
  --global-padding-4: 30px;	
  --global-padding-5: 30px 40px;
  
  --container-1: 1440px;
  --container-3: 1700px;
  --container-2: 100%;	
  --border-radius: 60px;
  
  --size-1: 100%;
  --size-2: 66.6%;		
  --size-3: 50%;
  --size-4: 33.3%;
  --size-5: 25%;
  --size-6: 20%;
  --size-7: 16.66666666666667%;	
  --size-8: 14.28571428571429%;
  --size-9: 12.5%;
  --size-1O: 850px;
}


*, *::before, *::after { box-sizing: border-box; }

html {font-family: var(--font-family);-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;line-height: 1;font-size:  var(--text-velikost-1);letter-spacing: -.6px;max-width: 100%;}
body {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;-webkit-tap-highlight-color: transparent;text-rendering: optimizelegibility;text-size-adjust: 100%;background: rgb(255, 255, 255);color: rgb(0, 0, 0);cursor: auto;font-size: 15px;font-style: normal;font-weight: 400;margin: 0px;padding: 0px;position: relative;overflow-wrap: break-word;    max-width: 100%;
    }
img {width: 100%;height: auto;}
strong {font-weight:var(--text-sirka-4)}
a {text-decoration: none;color: var(--color-one);cursor: pointer;}
a:hover {text-decoration: underline;color: var(--color-two);}
strikethrough {text-decoration: line-through}

.schovat {display:none!important}

.container {width: 85%;margin: 0 auto;max-width:var(--container-1);padding:0px;}
.container-mensi {width:850px; max-width:85%; margin:0 auto; padding:0px;}
.container-nejmensi {width:500px; max-width:85%; margin:0 auto; padding:0px;}
.container-cely {width: var(--size-1);margin: 0 auto;max-width: var(--container-2);padding:25px;}
.container-cely.pc {max-width: 100%}

.radek {display: flex;justify-content: space-between;align-items: center;width: 100%;flex-wrap: wrap;}
.radek.sgapem {flex-wrap: nowrap;gap: 40px;}

.cely {display: flex;width: var(--size-1);justify-content: center;align-items: center;flex-wrap: wrap;}
.polovina {display: flex;width: var(--size-3);justify-content: center;align-items: center;flex-wrap: wrap;}
.tretina {display: flex;width: var(--size-4);justify-content: center;align-items: center;flex-wrap: wrap;}
.ctvrtina {display: flex;width: var(--size-5);justify-content: center;align-items: center;flex-wrap: wrap;}
.petina {display: flex;width: var(--size-6);justify-content: center;align-items: center;flex-wrap: wrap;}
.sestina {display: flex;width: var(--size-7);justify-content: center;align-items: center;flex-wrap: wrap;}
.sedmina {display: flex;width: var(--size-8);justify-content: center;align-items: center;flex-wrap: wrap;}
.osmina {display: flex;width: var(--size-9);justify-content: center;align-items: center;flex-wrap: wrap;}
.dvetretiny {display: flex;width: var(--size-2);justify-content: center;align-items: center;flex-wrap: wrap;}

.justify-start {justify-content:flex-start!important;}
.justify-content-unset{justify-content:unset!important;}
.justify-content-start{justify-content:start!important;}
.justify-content-stretch{justify-content:stretch!important;}

.align-items-stretch {align-items: stretch!important;}
.align-items-end {align-items: flex-end!important;}
.align-items-start {align-items: flex-start!important;}
.align-items-normal {align-items:normal!important;}
.align-content-center{align-content:center!important;}

.justify-items-center {justify-items:center;}
.justify-items-start {justify-items:start;}

.text-center {text-align:center;}
.text-left {text-align:left;}
.text-right {text-align:right;}

.m-0 {margin:0px!important}
.mt-0 {margin-top: 0px!important}
.mb-0 {margin-bottom: 0px!important}
.my-15 {margin: 15px 0!important}
.mb-10{margin-bottom:10px!important;}
.mb-15{margin-bottom:15px!important;}
.mb-20 {margin-bottom: 20px!important}
.mb-30{margin-bottom:30px!important;}
.mb-35{margin-bottom:30px!important;}
.mb-40 {margin-bottom: 40px!important}
.mb-50{margin-bottom:50px!important;}
.mb-75{margin-bottom:75px!important;}
.ml-10 {margin-left: 10px!important}
.mr-10{margin-right:10px!important;}
.mt-30 {margin-top: 30px!important}

.p-0 {padding:0px!important}
.pt-0 {padding-top:0px!important}
.pb-0 {padding-bottom:0px!important}
.pl-0 {padding-left: 0px!important}
.pr-0 {padding-left: 0px!important}
.pb-15 {padding-bottom:15px!important}
.px-40 {padding: 0 0px 0 40px!important}
.px-25 {padding: 0 25px!important}
.p-40{padding:40px!important;}
.p-20{padding:20px!important;}
.p-25{padding:25px!important;}
.pt-50{padding-top:50px!important;}

.pinned { position: fixed; top: 0; left: 0;background: white;transition: .4s all;-webkit-box-shadow: 10px 10px 52px 0px rgba(0,0,0,0.19); -moz-box-shadow: 10px 10px 52px 0px rgba(0,0,0,0.19); box-shadow: 10px 10px 52px 0px rgba(0,0,0,0.19);}
.unpinned { position: fixed; top: -150px; left: 0;background: white;transition: .4s all;}

.bez-reakce {pointer-events:none!important;}


/*header footer*/
header {width: 100%;position: relative;display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;    z-index: 99;background:white}
header .container {padding: 15px 0;width: 100%;position: relative; z-index: 9;    overflow: unset; }
header .container .speslradek {display: flex;align-items: center;width: 100%;flex-wrap: wrap;flex-direction: row;justify-content: flex-start;background: white;border-radius: 8px;padding:0 10px}
header .textrotuj { font-size: 12px; font-weight: 800; padding-left: 10px; }
footer {width: 100%;}
footer .prvnicastmenu { display: flex;align-items: center;gap: 35px}
footer .druhacastmenu { display: flex;align-items: center;gap: 35px}
footer .menu .polozka {color:#fff; display: flex;justify-content: center;align-items: center;font-size: 15px;font-weight: 400;padding: var(--global-padding-2);padding-left: 0px;cursor: pointer;position: relative;padding-bottom: 10px;padding-top: 15px}
footer .menu .polozka a:before { width: 0%; height: 1px; background: var(--color-one); content: ""; display: block; position: absolute; bottom: 3px; left: 0px; transition: all .3s ease; }
footer .menu .polozka a:hover:before { width: 96%; }
footer .menu .polozka a:hover {color: var(--color-two)!important}
footer .menu .polozka a {text-decoration: none!important; color:#fff; font-weight:300;}

footer .menu .polozka-site a {padding-right:0px!important;}
footer .menu .polozka-site a img {width:25px;height:auto;}
footer .menu {width: 100%;justify-content: flex-start;padding-left: 0px; align-items: center;display: flex;gap: 20px}
footer .logo {display: flex;justify-content: start;align-items: center;cursor: pointer;width: auto}
footer .logo img {max-height:50px;height: 50px;width: auto;position: relative;}
.copyright { padding-top: 20px; margin-top: 5px; border-top: 1px solid #20202045;margin-bottom: 20px;font-size: 12px }
.textlinkwhite { font-size: 28px; color: white; text-decoration: none; font-weight: 100; }
.asteriskhp {max-width: 900px; margin: 100px auto; display: flex; }
.text-center {text-align: center!important}
.text-left {text-align: left!important}
.text-right {text-align: right!important}
.mainmenu { position: absolute; top: 27px; background: white; width:180px; left: -5px; border-radius: 20px; padding: 30px 22px; z-index: 999; -webkit-box-shadow: 2px 9px 25px 0px rgba(0, 0, 0, 0.24); -moz-box-shadow: 2px 9px 25px 0px rgba(0, 0, 0, 0.24); box-shadow: 2px 9px 25px 0px rgba(0, 0, 0, 0.24); }
.mainmenu .podpolozky { display: grid; grid-template-columns: 1fr; align-items: flex-start; gap:10px}
.mainmenu .podpolozky.jedna {grid-template-columns: 1fr}
.mainmenu .podpolozkydve { display: grid; grid-template-columns: 1fr; gap: 17px; }
.mainmenu .podpolozka { display: grid; grid-template-columns: 1fr; gap: 5px; }
.mainmenu .textik { text-decoration: none; text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 400; color:#353535;}
.mainmenu .textik:hover {cursor:pointer;font-weight:700;color:var(--color-one);}
.mainmenu .title { font-size: 15px; letter-spacing: -1px; color: #252525; font-weight: 600;}
.mainmenu .title:hover{text-decoration:underline!important;}
.mainmenu.w-200 { width:200px;}
.mainmenu.w-300 { width:300px;}
.mainmenu.w-250 { width:250px;}
.mainmenu.w-350 { width:350px;}
.unpinned { position: fixed; top: -150px; left: 0; background: white; transition: .4s all; }
.pinned { position: fixed; top: 0; left: 0; background: white; transition: .4s all; -webkit-box-shadow: 10px 10px 52px 0px rgba(0, 0, 0, 0.19); -moz-box-shadow: 10px 10px 52px 0px rgba(0, 0, 0, 0.19); box-shadow: 10px 10px 52px 0px rgba(0, 0, 0, 0.19); }
.pc .logo {display: flex;justify-content: start;align-items: center;max-width:290px;cursor: pointer;width:290px}
.pc .logo img {max-height:30px;height: 30px;width: auto;}
.pc .logo .text {font-size: var(--text-velikost-4);font-weight: var(--text-sirka-5);padding: var(--global-padding-2);max-width: 100px;width: 100px} 
.pc .menu {width: calc(100% - 580px);justify-content: center;padding-left: 0px; align-items: center;display: flex;}
.pc .menu .polozka {display: flex; justify-content: center; align-items: center; font-size: var(--text-velikost-1); font-weight: 500; padding: var(--global-padding-2); padding-left: 20px; cursor: pointer; position: relative; padding-bottom: 10px; text-transform: uppercase; letter-spacing: 1px;}
.pc .menu .polozka .mf:before { width: 0%; height: 1px; background: #000; content: ""; display: block; position: absolute; bottom: 3px; left: 10px; transition: all .3s ease; }
.swiper-wrapper.dva .swiper-slide:last-child{margin-right: 20px}
.pc .menu .polozka .mf:hover:before { width: 93%; }
.pc .menu .polozka .mf:hover {color: black!important}
.pc .menu .polozka .mf {text-decoration: none!important;color:black}
.pc .menu .polozka img {height: 8px;width: 8px;margin-left: 10px;}
.pc .cta {display: flex;justify-content: flex-end;align-items: center;max-width:290px;width: 290px; gap:20px;}
.pc .cta img {height: 19px;width: 19px;margin-left: 10px; filter:invert(1); opacity:.35; transition:.4s easy-in-out;}
.pc .cta img:hover {opacity:.75;}
.menu-btn-1 {height: 32px;width: 40px;cursor: pointer;margin-left: 25px}
.menu-btn-1 span {scale: .7;}
.menu-btn-1 span, .menu-btn-1 span::before, .menu-btn-1 span::after {background: black;border-radius: 3px;content: '';position: absolute;width: 40px;height: 4px;margin-top: 13px;-webkit-transition: .3s ease-in-out;
  -moz-transition: .3s ease-in-out;-o-transition: .3s ease-in-out;transition: .3s ease-in-out;}
.menu-btn-1 span::before {margin-top:-12px;}
.menu-btn-1 span::after {margin-top:12px;}
.menu-btn-1.active span {background: transparent;}
.menu-btn-1.active span::before {margin-top: 0;-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);transform: rotate(45deg);}
.menu-btn-1.active span::after {margin-top: 0;-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);transform: rotate(-45deg);}
.fullscreen-menu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #f8f9fa; display: none; flex-direction: column; justify-content: flex-start; padding: 20px; font-family: Arial, sans-serif; z-index:10}
.fullscreen-menu.active { display: grid; align-items: center; padding-left: 5vw; gap: 10px; } /* Show fullscreen menu when active */
.fullscreen-menu .holder .polozka { cursor: pointer; font-size: 40px; position: relative;    margin-bottom: 20px; }
.fullscreen-menu .holder .polozka .text {opacity:.7;}
.fullscreen-menu .holder .polozka .text:hover {opacity:1;}
.fullscreen-menu .holder .polozky { display: none; } /* Submenus hidden by default */
.fullscreen-menu .back-arrow { display: none; font-size: 24px; cursor: pointer; margin-bottom: 20px; }
.fullscreen-menu.show-back .back-arrow { display: block;opacity:.6; } /* Show back arrow when navigating into submenus */
.fullscreen-menu.show-back .back-arrow:hover {opacity:1}
.fullscreen-menu.active-level-two .holder > .visible > .text {font-weight:800;margin-bottom:30px;opacity:1;pointer-events: none;curor:default}
.fullscreen-menu.active-level-three .holder > .visible > .text {font-weight:800;margin-bottom:30px;display:none;opacity:1;pointer-events: none;curor:default}
.fullscreen-menu.active-level-three .holder > .polozka.visible > .polozky.visible > .polozka.visible > .text {font-weight:800;margin-bottom:30px;;opacity:1;pointer-events: none;curor:default}
.fullscreen-menu.active-level-two .holder > .visible > .text .sipkaopen {display:none}
.fullscreen-menu .hidden { display: none; }
.fullscreen-menu .visible { display: block!important; }
.fullscreen-menu .closemenu { position: absolute; right: 30px; top: 30px; width: 20px;opacity:.7;transition:.3s all; cursor:pointer}
.fullscreen-menu .closemenu:hover {opacity:1;}
.fullscreen-menu .asterixvmenu { width: 130px; margin-bottom: 40px; }
.fullscreen-menu .sipkaopen { width: 15px; height: 15px; position: relative; top: 0px;transition:.3s all;transform:rotate(-90deg); }
.fullscreen-menu.active-level-three .sipkaopen {display:none}
.hidden { display: none!important; } 
.visible { display: block; } 

.flex {display:flex!important}

.grid {display: grid;justify-content:center;align-items: center;}
.grid-1 {grid-template-columns:1fr;position:relative}
.grid-2 {grid-template-columns:1fr 1fr;position:relative}
.grid-3 {grid-template-columns:1fr 1fr 1fr;position:relative}
.grid-4 {grid-template-columns:1fr 1fr 1fr 1fr;position:relative}
.grid-rozcestnik {grid-template-columns:1fr 1fr 1fr 1fr;position:relative}
.grid-studentsky-dlazdice {grid-template-columns:1fr 1fr 1fr 1fr;position:relative}
.grid-5 {grid-template-columns:1fr 1fr 1fr 1fr 1fr;position:relative}
.grid-program {grid-template-columns: 1fr 3fr; position:relative;}
.prizpusobboxu {position:absolute;width:100%;height:100%;object-fit:cover;left:0;top:0;}
.hpsekce-1 .levacast, .hpsekce-1 .pravacast {position:relative;z-index:3;}
.hpsekce-1 { position: relative;color:white;height:100vh; display:grid;}
.container.pravacast img {width:90%; height:auto;margin:auto;}
.hpsekce-1 video {z-index:1}
.gap-0 {gap:0px;}
.gap-10 {gap:10px;}
.gap-20 {gap:20px;}
.gap-30 {gap:30px;}
.gap-35 {gap:35px;}
.gap-40 {gap:40px;}
.gap-50 {gap:50px;}
.gap-60 {gap:60px;}
.gap-80{gap:80px;}

.slide-up { transform: translateY(20%); }
.slide-down { transform: translateY(-20%); }
.slide-left { transform: translateX(20%); }
.slide-right { transform: translateX(-20%); }
.slide-up-visible { transform: translateY(0); opacity: 1; }
.slide-down-visible { transform: translateY(0); opacity: 1; }
.slide-left-visible { transform: translateX(0); opacity: 1; }
.slide-right-visible { transform: translateX(0); opacity: 1; }
.slow-animation { transition: transform 1s ease, opacity 1s ease; }

.hidden {display:none!important;}

/*END MAIN CSS */

.galerie-modal {    z-index: 999; display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); justify-content: center; align-items: center; } 
.galerie-modal.active { display: flex;justify-content:center; } 
.galerie-modal .img-container img { max-width: 100%; max-height: 100%; } 
.galerie-modal .sipky { display: flex; justify-content: space-between; width: 100%; position: absolute; top: 50%; transform: translateY(-50%);left: 0; } 
.galerie-modal .leva, .prava { cursor: pointer; }
.galerie-polozky { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; background:var(--color-one); transition:.4s all;}
.galerie-modal .img-container { display: flex; justify-content: center; align-items: center; }

.galerie-modal .leva { background: white; margin-left: 15px;cursor:pointer;padding: 15px; }
.galerie-modal .leva:hover {background:var(--color-one);}
.galerie-modal .leva img { width:20px;height:20px; }

.galerie-modal .prava {background: white; margin-right: 15px;cursor:pointer;padding:15px; }
.galerie-modal .prava:hover {background: var(--color-one);}
.galerie-modal .prava img { width:20px;height:20px; }


.galerie-polozka{transition:.4s all; cursor:pointer!important;}
.galerie-polozka:hover{opacity:.4;}
.galerie-polozka img { object-fit: cover; width: 100%; height: 100%; }

a.tlacitkovmenu {background-color: var(--color-one); color: var(--color-white); text-transform: uppercase; font-size: 11px; letter-spacing: 1px; padding: 34px 50px; margin-left: 15px; transition:.5s all;}
a.tlacitkovmenu:hover {text-decoration:none!important; background:var(--color-two);}

.uvodni-sekce { width: 100%; height: 100vh; padding: 25px; background: linear-gradient(45deg, var(--color-one) 0%, #071536 100%); }
.uvodni-sekce img.hlavni-image {width:80%; height:auto;}
.uvodni-sekce img.logo-cd {height:75px; width:auto;}

.bila-sekce {background:var(--color-white); padding: 10vh 0}
.tmava-sekce {background:var(--color-dark); padding: 10vh 0}

.nastred {display:flex; justify-content:center; align-items:center;}
.direction-column {flex-direction:column;}

.bez-ramecku {border:none!important;}

.tlacitko-kulate { background: var(--color-white); padding: 20px 35px; border-radius: 50px; color: var(--color-one); text-transform: uppercase; font-size: var(--text-velikost-2); font-weight: var(--text-sirka-3); letter-spacing: .25px; transition:.5s all}
.tlacitko-kulate:hover {text-decoration:none!important; background:var(--color-one); color:var(--color-white);}

.tlacitko-kulate-svetle { background: var(--color-two); padding: 20px 35px; border-radius: 50px; color: var(--color-white); text-transform: uppercase; font-size: var(--text-velikost-2); font-weight: var(--text-sirka-3); letter-spacing: .25px; transition:.5s all}
.tlacitko-kulate-svetle:hover {text-decoration:none!important; background:var(--color-white); color:var(--color-one);}

.tlacitko-kulate {background: var(--color-two); padding: 20px 35px; border-radius: 50px; color: var(--color-white); text-transform: uppercase; font-size: var(--text-velikost-2); font-weight: var(--text-sirka-3); letter-spacing: .25px; transition:.5s all}
.tlacitko-kulate:hover {text-decoration:none!important; background:var(--color-one); color:var(--color-white);}

.tlacitko-kulate-outline {padding: 20px 35px; border-radius: 50px; border:1px solid var(--color-two); color: var(--color-one); text-transform: uppercase; font-size: var(--text-velikost-2); font-weight: var(--text-sirka-3); letter-spacing: .25px; transition:.5s all}
.tlacitko-kulate-outline:hover {text-decoration:none!important; background:var(--color-one); color:var(--color-white); border:1px solid var(--color-one);}

h1 {color:var(--color-two); font-weight:var(--text-sirka-4); margin:Opx!important; line-height:1.5em;}
h2 {color:var(--color-one); font-weight:var(--text-sirka-4); margin:Opx!important;}

.text {font-size:var(--text-velikost-2); line-height:1.8em; font-weight:var(--text-sirka-2); letter-spacing:0px;}

.polozka-rozcestniku {display:flex; flex-direction:column; align-items:center; padding:25px; border-right:1px solid #c6c6c6;}
.polozka-rozcestniku img {width:85px; height:85px;}
.polozka-rozcestniku .nazev {font-size:var(--text-velikost-3); text-transform:uppercase; color:var(--color-one);}
.polozka-rozcestniku .nazev span {font-weight:var(--text-sirka-4)}

.vstupenkova-sekce {background: url(/wms/frontend/uploads/images/den-zeleznice-vstupenky-banner.jpg); padding: 10vh 0;}
.vstupenkova-sekce .nadpis { font-size: var(--text-velikost-5); font-weight: var(--text-sirka-4); color: var(--color-white); }
.vstupenkova-sekce .pozadi {position: absolute; width: 100%; height: 100%; top: 0; background: linear-gradient(90deg, rgba(0, 62, 126, 1) 0%, rgba(0, 62, 126, 0) 100%); z-index: revert-layer;}

.vstupenkova-sekce .typ-vstupenky {background:var(--color-white); border-radius:50px; padding: 35px; display: flex ; flex-direction: column; align-items: center; }

.z-index-99 {position:relative; z-index:99;}

.relative {position:relative;}

.accordion {font-size:var(--text-velikost-8); font-weight:var(--text-sirka-3); background-color: #f1f5f2; color: var(--color-two); cursor: pointer; padding: 20px; width: 100%; text-align: left; border: none; outline: none; transition: 0.4s; font-family:var(--font-family); display: flex !important ; justify-content: space-between; align-items: center;}
.accordion:hover {background: #DAE8E0; color:var(--color-two);}
.open {background:var(--color-one); color:#fff;}
.open:hover{background:var(--color-one); color:#fff;}
.panel {padding: 0 20px; background-color: white;max-height: 0; overflow: hidden; transition: 0.5s all;}
.open .panel {padding: 50px 20px;}
.accordion:after {content: "+"; font-size: var(--text-velikost-3); font-weight: var(--text-sirka-4); color: var(--color-one); float: right; margin-left: 5px; line-height: 1em; transition:.5s all;}
.accordion:hover:after {color:var(--color-two);}
.open:hover:after{color:#fff;}
.open:after {content: "–"; color:#fff;}
.takyopen {padding:35px 20px; max-height:fit-content!important;}
.nazev-zalozky {max-width:90%;}
.scrolovacisluzby { height: 100%; display: grid ; }
.panel .text {font-size: var(--text-velikost-4); color: var(--color-two); opacity: .75; text-align:left!important;}

.fotografie-homepage {height:400px; width:100%; overflow:hidden;}
.fotografie-homepage img {height:100%; width:100%; object-fit:cover;}

.odkaz-do-galerie {background:var(--color-one); height:100%; width:100%; padding:25px;}
.odkaz-do-galerie .nadpis {font-size:var(--text-velikost-3); color:var(--color-white); line-height:1.5em}

.podpis {color:var(--color-white);}
.podpis a {color:var(--color-two); transition:.5s all;}
.podpis a:hover {color:var(--color-white); text-decoration:none!important;}

.grid-rdz {grid-template-columns: 1fr 2fr;}

.regionalni-dny .nadpis {font-size:var(--text-velikost-4); font-weight:var(--text-sirka-3); color:var(--color-two); border-bottom:1px solid #c6c6c6;}
.regionalni-dny .jednotlive-datumy {display:flex; flex-direction:column; gap:20px;}
.regionalni-dny .jednotlive-datumy {font-size:var(--text-velikost-8); text-transform:uppercase;}

.typ-vstupenky {padding: 35px; border-right: 1px solid #c6c6c6; display: flex ; flex-direction: column; align-items: center;}
.typ-vstupenky .hlavicka {display:flex; flex-direction:column; align-items:center;}
.typ-vstupenky .hlavicka .nazev {font-size:var(--text-velikost-4); font-weight:var(--text-sirka-4); text-transform:uppercase; color:var(--color-two);}
.typ-vstupenky .hlavicka .datum {font-size:var(--text-velikost-3); font-weight:var(--text-sirka-3); color:var(--color-one);}
.typ-vstupenky .podminky {font-size:var(--text-velikost-6); line-height:1.5em; text-transform:italic; color:#505050;}

.seda-sekce {background:var(--color-light); padding:10vh 0;}
.seda-sekce .box {background:var(--color-white); border-radius:50px; padding:50px;}
.seda-sekce .box-modry {background:var(--color-one); border-radius:50px; padding:50px; color:var(--color-white)!important;}
.seda-sekce .box-modry h2 {color:var(--color-white);}
.seda-sekce img.logo-cd-nostalgie {height:65px; width:auto;}

.parkoviste .nazev {font-size:var(--text-velikost-3); font-weight:var(--text-sirka-3); color:var(--color-two);}

.tmavsipozadi{background:var(--color-one); padding:10px; border-radius:50px;}

.modra-sekce{background:var(--color-one); padding:10vh 0; color:var(--color-white)}

.switcher-header {display: flex; align-items: center; justify-content: center; gap: 35px; font-size: var(--text-velikost-7); font-weight:var(--text-sirka-4); line-height: 20px; overflow-x: auto; white-space: nowrap; padding-bottom: 10px; }
.switcher-body {display: flex; align-items: center; justify-content: center;margin: 50px 0 0 0}
.switch-content {display: none; }
.switch-content.active {display: grid;width: 100%; }
.switch-polozka {position: relative;padding-bottom: 10px;cursor: pointer }
.switcher-header .switch-polozka:before { width: 0%; height: 1px; background: #fff; content: ""; display: block; position: absolute; bottom: 3px; left: 0px; transition: all .3s ease; }
.switcher-header .switch-polozka:hover:before { width: 100%; }
.switcher-header .switch-polozka.active:before { color:var(--color-white);}
.switcher-header .switch-polozka.active { color:var(--color-white);}
.switcher-header .switch-polozka.active:before { width: 100%; }

.vrsek {width: 100%; height: fit-content; background: var(--color-two); display: grid ; justify-content: center; align-items: center; position: relative; padding: 10vh 0; } 
.vrsek .bg { position: absolute; width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; }
.vrsek .textovacast {color: white; font-size:var(--text-velikost-5); text-align: center; z-index: 2; position: relative; display: grid ; justify-content: center; align-content: center; align-items: center; align-self: center;}
.vrsek .textovacast .ikona {    margin: 0 auto;width:80px;display:grid}
.vrsek .textovacast h1 {color:white}
.vrsek .textovacast .popis {font-size:var(--text-velikost-3);}

.kategoriehead { display: grid ; padding: 15px 0; border-bottom: 1px solid var(--color-one); font-size: 24px; font-weight: 600; color: var(--color-two); margin-bottom:30px}
.kategoriebody { display: grid ; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 20px;margin-bottom:40;}
.kategoriebody .kategorie { display: grid ;cursor:pointer; border-radius:20px; overflow:hidden; transition:.5s all}
.kategoriebody .kategorie h2 {    margin: 0;background:var(--color-two);color:white;font-size:16px;padding:50px 20px;text-align:left;font-weight:500; line-height:1.4em}
.kategoriebody .kategorie .info {background:var(--color-one);color:white;font-size:14px;padding:20px;text-align:left}
.kategoriebody .kategorie:hover {filter:brightness(.9);}

.kategoriebody-tri { display: grid ; grid-template-columns: 1fr 1fr 1fr; gap: 20px;margin-bottom:40; }
.kategoriebody-tri .kategorie { display: grid ; border-radius:20px; overflow:hidden; transition:.5s all}
.kategoriebody-tri .kategorie h2 {    margin: 0;background:var(--color-two);color:white;font-size:16px;padding:50px 20px;text-align:left;font-weight:500; line-height:1.4em}
.kategoriebody-tri .kategorie .info {background:var(--color-one);color:white;font-size:14px;padding:20px;text-align:left}

.kategoriebody-pet { display: grid ; grid-template-columns: 1fr 1fr 1fr 1fr 1fr; gap: 20px;margin-bottom:40; text-align:center}
.kategoriebody-pet .kategorie { display: grid ; border-radius:20px; overflow:hidden; transition:.5s all}
.kategoriebody-pet .kategorie h2 {    margin: 0;background:var(--color-two);color:white;font-size:16px;padding:50px 20px;text-align:left;font-weight:500; line-height:1.4em}
.kategoriebody-pet .kategorie .info {background:var(--color-one);color:white;font-size:14px;padding:20px;text-align:left}


/* modal */
.modal {position: fixed; top: 0; left: 0; width: 100%; height: 100%; display: none; justify-content: center; align-items: center; background-color: rgba(0,0,0,0.6); z-index: 1000; transition: opacity 0.3s ease;}
.modal.active {display: flex;}
.modal .content {background: white; border-radius: 8px; width: 90%; max-width: 800px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.2); display: flex; flex-direction: column;}

.modal .header {width: 100%; position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; z-index: 99; background: white; padding: 15px;}
.modal .body {width: 100%; padding: 20px; background: white;line-height: 1.4}
.modal .footer {width: 100%; padding: 15px; background: white; display: flex; justify-content: flex-end; gap: 10px;}


/* cookies */
#cookieConsent { display: none; position: fixed; left: 20px; bottom: 20px; background-color: #fff; color: #000; padding: 20px; width: 300px; border-radius: 10px; border:1px solid #dbdde2; z-index: 9999; }
#cookieConsent h3 { margin-top: 0; }
#cookieConsent label { display: flex; justify-content: space-between; margin: 10px 0; font-size: 14px; }
.cookie-switch { position: relative; display: inline-block; width: 34px; height: 18px; }
.cookie-switch input { display: none; }
.cookie-slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; }
.cookie-slider:before { position: absolute; content: ""; height: 14px; width: 14px; left: 2px; bottom: 2px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked + .cookie-slider { background-color: #4CAF50; }
input:checked + .cookie-slider:before { transform: translateX(16px); }
#cookieConsent button { background-color: #4CAF50; color: white; border: none; padding: 10px 20px; cursor: pointer; border-radius: 5px; }
#cookieConsent button:hover { background-color: #45a049; }
#cookieSettingsIcon { display: none; position: fixed; left: 20px; bottom: 20px; width: 40px; height: 40px; background-color: #000; color: white; border-radius: 50%; text-align: center; line-height: 40px; font-size: 20px; cursor: pointer; z-index: 9999; }

/*START CLIENT CSS */


@media only screen and (max-width: 1690px) {


}

@media only screen and (max-width: 1500px) {

}

@media only screen and (max-width: 1450px) {


}
@media only screen and (max-width: 1300px) {

}

@media only screen and (min-width: 1200px) {
    
    .ukaznamobilu {display:none!important;}

}

@media only screen and (max-width: 1200px) {
  .kategoriebody {grid-template-columns: 1fr 1fr}
    .grid-3 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-4 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-rozcestnik {grid-template-columns: 1fr 1fr;}
    .grid-5 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-6 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-7 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-8 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .grid-9 {grid-template-columns: repeat(2, minmax(250px, 1fr));}
    .dropdown-button {font-size: 16px; font-weight: 300; line-height: 22px;}
	html, content, body, footer  {overflow-x: hidden}
    header {position: relative; z-index:999999}
    .pc .menu{ position: fixed; top: 0; left: 0; z-index: 999; background: white; width: 100%; padding: 0; height: 100vh; display: flex; align-items: center; display: none; }
    header .container .speslradek { justify-content:space-between;}
    .fullscreen-menu .holder .polozka { cursor: pointer; font-size: 26px; position: relative; margin-bottom: 13px; }
    .pc .cta { justify-content: flex-end; }
    .pc .logo {width: unset }
    
    .schovejnamobilu{display:none!important;}
    .ukaznamobilu{display:visible!important;}
    
    .polozka-rozcestniku {border-right:none!important;}
    
    .uvodni-sekce {height:85vh;}
    .uvodni-sekce img.logo-cd { height: 65px; width: auto; }
    .uvodni-sekce img.hlavni-image { width: 100%; height: auto; }
    
    .container-cely {padding: 20px;} 
    
    .pc .cta {width:fit-content;}
    
    h2 {line-height:1.4em;}
    
    .fotografie-homepage {height: 250px;}
    .odkaz-do-galerie {padding:10vh 25px;}
    
    .vrsek .textovacast {font-size:20px; padding:0 5%;}
    
    .vrsek .textovacast .ikona { margin: 0 auto; width: 65px; display: grid ; }
    
    .vrsek .textovacast .popis {line-height:1.5em;}
    
    .jizdni-rady-tlacitka {flex-direction: column; border-radius:35px}
    
    .grid-rdz {grid-template-columns: 1fr;}
    
    .regionalni-dny {text-align:center;}
    
    .galerie-polozky { grid-template-columns: 1fr 1fr; }
    
    .kategoriebody-pet {display:grid; grid-template-columns:1fr 1fr; gap:20px;}
    
    .kategoriebody-tri {display:grid; grid-template-columns:1fr; gap:20px;}
    
    .typ-vstupenky {border-right: none;}
    
    .fullscreen-menu .polozka .text { cursor: pointer; font-size: 26px; position: relative; margin-bottom: 13px; color: var(--color-one); opacity:1;}
    
    .fullscreen-menu .holder .polozka .text { opacity: 1; }
    
    footer .menu .polozka {font-size: 12px;}
    
    .podpis {font-size:12px;}
    
    .tlacitko-kulate, .tlacitko-kulate-svetle, .tlacitko-kulate-outline {font-size:12px;}
    
}

@media only screen and (max-height: 1100px) {

}
@media only screen and (max-width: 980px) {
  
  .polovina {width: 100%}
  .w-600 {width: 100%!important}
}


@media only screen and (max-width: 820px) {
 
}

@media only screen and (max-width: 650px) {
  .kategoriebody {grid-template-columns: 1fr}
    .grid-2 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
	.grid-3 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-4 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-5 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-6 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-7 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-8 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
    .grid-9 {grid-template-columns: repeat(1, minmax(250px, 1fr));}
}

