@charset "utf-8";

@import url("css/fontawesome-4.6.3.min.css");
@import url("css/framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row0, .row0 a{}
.row1, .row1 a{}
.row2, .row2 a{}
.row3, .row3 a{}
.row4, .row4 a{}
.row5, .row5 a{}


/* Top Bar
--------------------------------------------------------------------------------------------------------------- */
#topbar{padding:5px 0; font-size:12px;}

#topbar .fl_right{}
#topbar .fl_right i{margin:0 5px 0 0; line-height:normal;}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{}

#header #logo{margin:30px 0 0 0;}
#header #logo h1{margin:0; padding:0; font-size:22px; text-transform:uppercase;}


/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{padding:200px 0;}

#pageintro article *{}
#pageintro article .heading{margin:0; font-size:32px; text-transform:uppercase;}/* Override default settings */
#pageintro article p{margin:0;}
#pageintro article footer{margin-top:30px;}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{padding:80px 0;}

/* Content */
.container .content{}

.fa-ul{margin:0; padding:0; list-style:none;}
.fa-ul > li{position:relative; margin-bottom:30px; padding-left:4.5rem;}
.fa-ul > li:last-child{margin-bottom:0;}
.fa-li{position:absolute; top:0; left:0; width:auto; font-size:3rem; line-height:1; text-align:center;}

.testimonial{}
.testimonial blockquote{display:block; position:relative; width:100%; margin:0 0 30px 0; padding:30px; line-height:1.4; border:solid; border-width:0 0 1px 0; text-align:center; z-index:1;}
.testimonial blockquote::before{display:none;}
.testimonial blockquote::after{display:block; position:absolute; bottom:0; left:50%; margin:0 0 -18px -18px; content:""; border:solid; border-width:18px 18px 0 18px;}

/* Comments */
#comments ul{margin:0 0 40px 0; padding:0; list-style:none;}
#comments li{margin:0 0 10px 0; padding:15px;}
#comments .avatar{float:right; margin:0 0 10px 10px; padding:3px; border:1px solid;}
#comments address{font-weight:bold;}
#comments time{font-size:smaller;}
#comments .comcont{display:block; margin:0; padding:0;}
#comments .comcont p{margin:10px 5px 10px 0; padding:0;}

#comments form{display:block; width:100%;}
#comments input, #comments textarea{width:100%; padding:10px; border:1px solid;}
#comments textarea{overflow:auto;}
#comments div{margin-bottom:15px;}
#comments input[type="submit"], #comments input[type="reset"]{display:inline-block; width:auto; min-width:150px; margin:0; padding:8px 5px; cursor:pointer;}

/* Sidebar */
.container .sidebar{}

.sidebar .sdb_holder{margin-bottom:50px;}
.sidebar .sdb_holder:last-child{margin-bottom:0;}

.galerie-slider {
  width: 100%;
  max-width: 1000px; /* uprav podle potřeby */
  margin: 0 auto;
  overflow: hidden;
}

/* Sidebar Swiper*/
.galerie-slider .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Split Box
--------------------------------------------------------------------------------------------------------------- */
.split{}
.split .box{display:block; position:relative; float:left; width:50%; padding:120px 50px 120px 0;}
.split .box::after{display:block; position:absolute; top:0; left:-1000%; bottom:0; right:100%; content:"";}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:80px 0;}

#footer .title{margin:0 0 30px 0; padding:0 0 8px 0; border-bottom:1px solid; font-size:1.2rem;}

#footer .linklist li{margin-bottom:10px;}
#footer .linklist li:last-child{margin-bottom:0;}

#footer .font-xs{margin:0;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:20px 0;}
#copyright *{margin:0; padding:0;}


/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
*, *::before, *::after{transition:all .3s ease-in-out;}
#mainav form *{transition:none !important;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol{margin:0; padding:0; list-style:none;}

#mainav, #breadcrumb, .sidebar nav{line-height:normal;}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after{position:absolute; font-family:"FontAwesome"; font-size:10px; line-height:10px;}

/* Top Navigation */
#mainav{}
#mainav ul.clear{margin-top:3px;}
#mainav ul{text-transform:uppercase;}
#mainav ul ul{z-index:9999; position:absolute; width:230px; text-transform:none;}
#mainav ul ul ul{left:180px; top:0;}
#mainav li{display:inline-block; position:relative; margin:0 15px 0 0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; margin:0;}
#mainav li a{display:block; padding:30px 0;}
#mainav li li a{border:solid; border-width:0 0 1px 0;}
#mainav .drop{padding-left:15px;}
#mainav li li a, #mainav li li .drop{display:block; margin:0; padding:10px 15px;}
#mainav .drop::after, #mainav li li .drop::after{content:"\f0d7";}
#mainav .drop::after{top:35px; left:5px;}
#mainav li li .drop::after{top:15px; left:5px;}
#mainav ul ul{visibility:hidden; opacity:0;}
#mainav ul li:hover > ul{visibility:visible; opacity:1;}

#mainav form{display:none; margin:0; padding:0;}
#mainav form select, #mainav form select option{display:block; cursor:pointer; outline:none;}
#mainav form select{width:100%; padding:5px; border:1px solid;}
#mainav form select option{margin:5px; padding:0; border:none;}

/* Breadcrumb */
#breadcrumb{padding:15px 0;}
#breadcrumb ul{margin:0; padding:0; list-style:none; text-transform:uppercase;}
#breadcrumb li{display:inline-block; margin:0 6px 0 0; padding:0;}
#breadcrumb li a{display:block; position:relative; margin:0; padding:0 12px 0 0; font-size:12px;}
#breadcrumb li a::after{top:3px; right:0; content:"\f101";}
#breadcrumb li:last-child a{margin:0; padding:0;}
#breadcrumb li:last-child a::after{display:none;}

/* Sidebar Navigation */
.sidebar nav{display:block; width:100%;}
.sidebar nav li{margin:0 0 3px 0; padding:0;}
.sidebar nav a{display:block; position:relative; margin:0; padding:5px 10px 5px 15px; text-decoration:none; border:solid; border-width:0 0 1px 0;}
.sidebar nav a::after{top:9px; left:5px; content:"\f101";}
.sidebar nav ul ul a{padding-left:35px;}
.sidebar nav ul ul a::after{left:25px;}
.sidebar nav ul ul ul a{padding-left:55px;}
.sidebar nav ul ul ul a::after{left:45px;}

/* Pagination */
.pagination{display:block; width:100%; text-align:center; clear:both;}
.pagination li{display:inline-block; margin:0 2px 0 0;}
.pagination li:last-child{margin-right:0;}
.pagination a, .pagination strong{display:block; padding:8px 11px; border:1px solid; background-clip:padding-box; font-weight:normal;}

/* Back to Top */
#backtotop{z-index:999; display:inline-block; position:fixed; visibility:hidden; bottom:20px; right:20px; width:36px; height:36px; line-height:36px; font-size:16px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.5;}
#backtotop:hover{opacity:1;}


/* Tables
--------------------------------------------------------------------------------------------------------------- */
table, th, td{border:1px solid; border-collapse:collapse; vertical-align:top;}
table, th{table-layout:auto;}
table{width:100%; margin-bottom:15px;}
th, td{padding:5px 8px;}
td{border-width:0 1px;}


/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery{display:block; width:100%; margin-bottom:50px;}
#gallery figure figcaption{display:block; width:100%; clear:both;}
#gallery li{margin-bottom:30px;}


/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico{margin:0; padding:0; list-style:none;}
.faico li{display:inline-block; float:left; margin:0 10px 0 0; padding:0; line-height:normal;}
.faico li:last-child{margin-right:0;}

.faico a{display:block; font-size:14px; text-align:center;}

.faico a{color:inherit; background-color:transparent;}
.faicon-dribble:hover{color:#EA4C89;}
.faicon-facebook:hover{color:#3B5998;}
.faicon-google-plus:hover{color:#DB4A39;}
.faicon-linkedin:hover{color:#0E76A8;}
.faicon-pinterest:hover{color:#C8232C;}
.faicon-rss:hover{color:#EE802F;}
.faicon-twitter:hover{color:#00ACEE;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body{color:#A6A6A6; background-color:#26272B;}
a{color:#ff6633; /*#A3BF00*/}
a:active, a:focus{background:transparent;}/* IE10 + 11 Bugfix - prevents grey background */
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}
input:focus, textarea:focus, *:required:focus{border-color:#A3BF00;}
.overlay{color:#FFFFFF; background-color:inherit;}
.overlay::after{color:inherit; background-color:rgba(0,0,0,.55);}

.btn, .btn.inverse:hover{color:#FFFFFF; background-color:#A3BF00; border-color:#A3BF00;}
.btn:hover, .btn.inverse{color:inherit; background-color:transparent; border-color:inherit;}


/* Rows */
.row0, .row0 a{color:#A6A6A6; background-color:#26272B;}
.row1, .row1 a{}
.row2{color:#A6A6A6; background-color:rgba(0,0,0,.3);}
.row3{color:#797979; background-color:#FFFFFF;}
.row4{color:#A6A6A6; background-color:#151517;}
.row5, .row5 a{color:#A6A6A6; background-color:#26272B;}


/* Header */
#header #logo a{color:inherit;}


/* Split Box */
.split .box, .split .box::after{color:#FFFFFF; background-color:#151517;}


/* Content Area */
#shout .heading{color:#FFFFFF; background:inherit;}

.testimonial blockquote{color:rgba(255,255,255,.5); background-color:rgba(0,0,0,.2); border-color:rgba(0,0,0,.5);}
.testimonial:hover blockquote{color:#FFFFFF; background-color:#000000;}
.testimonial blockquote::after{border-color:transparent; border-top-color:rgba(0,0,0,.5);}


/* Footer */
#footer .title, #footer .heading{color:#FFFFFF; border-color:#26272B;}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#ff6633; background-color:inherit;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(0,0,0,.6); border-color:rgba(0,0,0,.6);}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#ff6633;}
#mainav form select{color:#FFFFFF; background-color:#26272B; border-color:rgba(255,255,255,.2);}

#breadcrumb a{color:inherit; background-color:inherit;}
#breadcrumb li:last-child a{}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#ff6633;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current *{color:#FFFFFF; background-color:#ff6633;}

#backtotop{color:#FFFFFF; background-color:#ff6633;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
#comments input:focus, #comments textarea:focus, #comments *:required:focus{border-color:#A3BF00;}
th{color:#FFFFFF; background-color:#373737;}
tr, #comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
tr:nth-child(even), #comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
table a, #comments a{background-color:inherit;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:978px){
	.hoc{max-width:978px;}
}


/* Mobile Devices
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:900px){
	.hoc{max-width:90%;}

	#topbar{}

	#header{padding:30px 0 15px;}
	#header #logo{margin:0;}

	#mainav{}
	#mainav ul{display:none;}
	#mainav form{display:block;}

	#breadcrumb{}

	.container{}
	#comments input[type="reset"]{margin-top:10px;}
	.pagination li{display:inline-block; margin:0 5px 5px 0;}

	#footer{}

	#copyright{}
	#copyright p:first-of-type{margin-bottom:10px;}
}


@media screen and (max-width:750px){
	.imgl, .imgr{display:inline-block; float:none; margin:0 0 10px 0;}
	.fl_left, .fl_right{display:block; float:none;}
	.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0; padding:0;}

	#topbar, #header{text-align:center;}

	#header #logo{margin-bottom:15px;}

	#topbar .fl_left{margin-bottom:10px;}
	#topbar .faico li{float:none;}
	#topbar .fl_right li{display:inline-block;}
	#topbar .fl_right li:first-child{margin-right:20px;}

	#shout div:last-child{margin:0;}

	#footer{padding-bottom:50px;}/* Not needed, just looks a little cleaner - can be removed if not wanted */
}


/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px){
	.scrollable{display:block; width:100%; margin:0 0 30px 0; padding:0 0 15px 0; overflow:auto; overflow-x:scroll;}
	.scrollable table{margin:0; padding:0; white-space:nowrap;}

	.inline li{display:block; margin-bottom:10px;}
	.pushright li{margin-right:0;}

	.font-x2{font-size:1.4rem;}
	.font-x3{font-size:1.6rem;}

	.hoc.split{max-width:none; width:100%;}
	.split .box{float:none; width:100%; padding:10% 5%;}
}

#cookie-bar {background:#808080; height:auto; line-height:24px; color:#eeeeee; text-align:center; padding:10px 0;font-size: 0.9em;}
#cookie-bar.fixed {position:fixed; top:0; left:0; width:100%;}
#cookie-bar.fixed.bottom {bottom:0; top:auto;}
#cookie-bar p {margin:0; padding:0; color: #000;font-size: 1em;}
#cookie-bar a {color:#ffffff; display:inline-block; border-radius:3px; text-decoration:none; padding:0 6px; margin-left:8px;}
#cookie-bar .cb-enable {background:#007700;}
#cookie-bar .cb-enable:hover {background:#009900;}
#cookie-bar .cb-disable {background:#990000;}
#cookie-bar .cb-disable:hover {background:#bb0000;}
#cookie-bar .cb-policy {background:#0033bb;}
#cookie-bar .cb-policy:hover {background:#0055dd;}

.foto img {
margin: 5px;
padding: 5px;
background: #fff;
border: 1px solid #ccc;
box-shadow: 3px 3px 5px #888888;
}

.blok1, .blok2 {
border: 1px solid black;
margin: 10px;
padding: 0 10px;
background-color:#FBFBFB;
}

.bullet_img {float: left;margin-left: -60px;}

td.stred {text-align: center;}

table.deti {
font-size: 80%;
}

.reg-popis {
  font-size: 14px;
  font-weight: 400;
  margin: 0;
  color: #333;
}

.btn-registrace {
  display: inline-block;
  padding: 10px 24px;
  background-color: #e74c3c;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  border-radius: 4px;
  transition: background-color 0.3s ease;
  white-space: nowrap;
}

.btn-registrace:hover {
  background-color: #c0392b;
  color: #fff;
}

.wrapper.row-vybava {
  background-color: #E8E8E8;
  min-height: 100px;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid #f5f5f5;
}

.wrapper.row-vybava .hoc.container.clear {
  width: 100%;
}

.row-vybava {
  background-color: #E8E8E8;
  padding: 10px 0;
}

.vybava-box {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

.vybava-text {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
  color: #333;
}

.vybava-buttons {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: center;
}

.btn-vybava {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background-color: #2c3e50;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  text-align: center;
  padding: 5px;
  box-sizing: border-box;
  line-height: 1.2;
}

.wrapper.row-galerie {
  background-color: #ffffff;
  width: 100%;
  padding: 10px 0;
margin: -30px 0 0 0;
}

.galerie-heading {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #333;
}

.galerie-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px 0;
}

.galerie-item {
  width: 30%;
  height: 250px;
  background-color: #ccc;
  background-size: cover;
  background-position: center;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
}

.galerie-label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 12px 15px;
  background: linear-gradient(to top, rgba(0,0,0,0.7), rgba(0,0,0,0));
  color: #fff;
  font-weight: 600;
  font-size: 16px;
  box-sizing: border-box;
  text-align: left;
  text-decoration: none;
  display: block;
  transition: background-color 0.3s ease;
}

.galerie-label:hover {
  background: linear-gradient(to top, rgba(0,0,0,0.85), rgba(0,0,0,0.1));
  color: #fff;
}

.wrapper.row-recenze,
.row-recenze {
  background: #111 !important;
  color: #fff !important;
  padding: 0 !important;
}

.wrapper.row-recenze .hoc,
.wrapper.row-recenze .container,
.row-recenze .hoc,
.row-recenze .container {
  background: #111 !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* ========== Základní kontejner ========== */
.kurzy-wrap {
  max-width: 900px;
  margin: 0 auto 40px;
  font-family: inherit;
  color: #000;
}

/* ========== Karta ========== */
.kurz-card {
  background: #fff;
  color: #000;
  border: 1px solid #ddd;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 30px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  padding: 24px;
}

.kurz-card h2 {
  margin: 0 0 16px;
  font-size: 1.4rem;
  color: #000;
}

.kurz-card h3 {
  margin: 22px 0 10px;
  font-size: 1.15rem;
  color: #000;
}

.kurz-card p {
  margin: 0 0 14px;
  line-height: 1.65;
}

.kurz-card ul {
  margin: 8px 0 16px 20px;
  padding: 0;
}

.kurz-card li {
  margin-bottom: 4px;
}

/* ========== Hlavička kurzu (obrázek + info) ========== */
.kurz-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #eee;
  margin-bottom: 10px;
}

.kurz-header img {
  width: 140px;
  height: auto;
  border-radius: 8px;
  display: block;
}

.kurz-info h1 {
  margin: 0 0 8px;
  font-size: 1.4rem;
  line-height: 1.3;
  color: #000;
}

.kurz-info h2 {
  margin: 0;
  font-size: 1.25rem;
  color: #000;
}

/* ========== Termíny (obsazenost) ========== */
.termin {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid #eee;
  gap: 12px;
}

.termin:last-child {
  border-bottom: none;
}

.termin-obsazenost {
  flex: 0 0 140px;
  font-weight: bold;
  font-size: 1.1rem;
  color: #000;
}

.termin-cas {
  flex: 1 1 220px;
}

.termin-cas h2 {
  margin: 0 0 4px;
  font-size: 1.2rem;
  color: #000;
}

.termin-cas h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: normal;
  color: #333;
}

.termin-akce {
  flex: 0 0 auto;
  text-align: right;
}

.termin-akce h2 {
  margin: 0;
  font-size: 1.15rem;
  color: #000;
}

.termin-akce a {
  color: #c00;
  text-decoration: underline;
  font-weight: bold;
}

.termin-akce a:hover {
  text-decoration: none;
}

/* ========== Ceník ========== */
.cenik-box {
  background: #f9f9f9;
  border: 1px solid #eee;
  border-radius: 10px;
  padding: 18px 22px;
  margin: 24px 0;
}

.cenik-box h3 {
  margin: 0 0 14px;
  font-size: 1.15rem;
}

.cenik-radek {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid #eee;
  gap: 16px;
}

.cenik-radek:last-child {
  border-bottom: none;
}

.cenik-radek span:last-child {
  font-weight: bold;
  white-space: nowrap;
}

.cena {
  font-size: 1.15rem;
  font-weight: bold;
  margin: 8px 0;
}

/* ========== Kontaktní box ========== */
.kontakt-box {
  background: #f8f8f8;
  border-left: 4px solid #c00;
  padding: 14px 18px;
  margin: 20px 0 0;
  border-radius: 0 8px 8px 0;
  font-size: 0.95rem;
}

/* ========== Video ========== */
.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
  overflow: hidden;
  max-width: 100%;
  margin-bottom: 30px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* ========== Trenér (workshop) ========== */
.trenér-header {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: flex-start;
  margin-bottom: 20px;
}

.trenér-header img {
  width: 150px;
  height: auto;
  border-radius: 10px;
  display: block;
}

.trenér-info {
  flex: 1 1 280px;
}

.trenér-info strong {
  font-size: 1.2rem;
  display: block;
  margin-bottom: 8px;
}

/* ========== Osnova ========== */
.osnova ol {
  margin: 6px 0 16px 20px;
  padding: 0;
}

.osnova li {
  margin-bottom: 4px;
  line-height: 1.5;
}

/* ========== Media řádek (video + foto) ========== */
.media-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  margin-top: 10px;
}

.media-row a img {
  width: 190px;
  height: auto;
  border-radius: 10px;
  display: block;
}

/* ========== Průběh oslavy ========== */
.prubeh {
  background: #f9f9f9;
  border-radius: 10px;
  padding: 16px 20px;
  margin: 18px 0;
}

.prubeh ul {
  margin: 8px 0 0 18px;
  padding: 0;
}

.prubeh li {
  margin-bottom: 6px;
}

/* Doplňkové styly jen pro tuto stránku */
.oteviraci-doba {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 6px 16px;
  margin: 10px 0 20px;
  font-size: 1.05rem;
}

/* Doplňkové styly Otvíračku */
.oteviraci-doba span:nth-child(even) {
  font-weight: bold;
}

.adresa-mapa {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-top: 10px;
}

.adresa-box {
  flex: 1 1 260px;
}

.mapa-box {
  flex: 1 1 320px;
}

.mapa-box iframe {
  width: 100%;
  height: 300px;
  border: 0;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.street-view {
  margin-top: 30px;
}

.street-view img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

@media (max-width: 600px) {
  .oteviraci-doba {
    grid-template-columns: 100px 1fr;
  }
}

/* ========== Responzivita ========== */
@media (max-width: 600px) {
  .kurz-card {
    padding: 18px;
  }

  .kurz-header {
    flex-direction: column;
    text-align: center;
  }

  .termin {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }

  .termin-obsazenost,
  .termin-cas,
  .termin-akce {
    flex: 1 1 100%;
    text-align: center;
  }

  .cenik-radek {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  .trenér-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .media-row {
    flex-direction: column;
  }

  .media-row a img {
    width: 160px;
  }

  .kurz-info h1 {
    font-size: 1.25rem;
  }
}
/* ############################# vložení head logo ########################### */

/* ############################# vložení nového design ########################### */
.v16-hero {
  min-height: 72vh;
  display: flex;
  align-items: flex-end;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(0,0,0,.15) 20%, rgba(0,0,0,.72) 100%),
    url("images/375.jpg") center/cover no-repeat;
  padding: 140px 0 70px;
}
.v16-hero h1 {
  font-size: clamp(32px, 5vw, 58px);
  line-height: 1.05;
  margin: 0 0 12px;
  max-width: 16ch;
}
.v16-hero p { font-size: 20px; margin: 0 0 26px; opacity: .95; }
.v16-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.v16-btn {
  display: inline-block;
  padding: 14px 24px;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
}
.v16-btn-red { background: #d21f2b; color: #fff !important; }
.v16-btn-white { background: #fff; color: #111 !important; }

.wrapper.v16-first,
.v16-first {
  background: #111 !important;
  color: #fff !important;
  padding: 0 !important;
  width: 100%;
}

.wrapper.v16-first .hoc,
.wrapper.v16-first .container,
.v16-first .hoc,
.v16-first .container {
  background: #111 !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  max-width: 978px;
}

.v16-first-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  padding: 0 !important;
  text-align: center;
}

.v16-first-inner > div {
  flex: 0 0 auto;
  width: auto;
  text-align: center;
}
.v16-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 6px;
}
.v16-pills span {
  background: #2a2a2a;
  color: #fff;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 14px;
}

.v16-section { padding: 70px 0; }
.v16-section h2 { margin: 0 0 10px; font-size: 32px; }
.v16-lead { color: #fff; margin: 0 0 28px; max-width: 620px; }

.v16-walls {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 16px;
}
.v16-wall {
  position: relative;
  min-height: 280px;
  border-radius: 16px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
  color: #fff !important;
  text-decoration: none;
}
.v16-wall span {
  display: block;
  width: 100%;
  padding: 22px;
  background: linear-gradient(transparent, rgba(0,0,0,.7));
  font-weight: 800;
  font-size: 22px;
}

.v16-grades {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 16px;
}

.v16-grades a {
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

.v16-grades a b {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 13px;
  line-height: 1.2;
  white-space: nowrap;
}

.g-zluta { background: #ffe14a; }
.g-ruzova { background: #ff7ad9; }
.g-oranz { background: #ff8a2a; }
.g-zelena { background: #3ecf6a; }
.g-modra { background: #3aa0ff; }
.g-cervena { background: #ff3b3b; color: #fff; }
.g-zlata { background: #d4af37; color: #111; }

.v16-grades-note {
  margin: 0 0 8px;
}

@media screen and (max-width: 700px) {
  .v16-grades {
    justify-content: flex-start;
    gap: 8px;
  }
  .v16-grades a {
    flex: 0 1 auto;
  }
  .v16-grades a b {
    padding: 7px 12px;
    font-size: 12px;
  }
}

.v16-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.v16-card {
  background: #f6f6f6;
  border-radius: 16px;
  padding: 22px;
  text-decoration: none;
  color: #111 !important;
}
.v16-card strong { display: block; font-size: 18px; margin-bottom: 8px; }
.v16-card span { color: #666; font-size: 14px; }

.v16-split {
  display: grid;
  grid-template-columns: 1.3fr .7fr;
  gap: 16px;
}
.v16-cafe, .v16-hours {
  border-radius: 16px;
  min-height: 240px;
  padding: 28px;
}
.v16-cafe {
  background:
    linear-gradient(rgba(0,0,0,.35), rgba(0,0,0,.45)),
    url("images/392.jpg") center/cover;
  color: #fff;
}
.v16-hours { background: #111; color: #fff; }
.v16-hours p { margin: 6px 0; }

@media screen and (max-width: 850px) {
  .v16-walls, .v16-cards, .v16-split { grid-template-columns: 1fr; }
  .v16-hero { min-height: 62vh; padding-top: 120px; }
}
.wrapper.row4 {
  width: 100%;
}

.wrapper.row4 #footer,
#footer.hoc.clear {
  display: flex !important;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 30px;
  max-width: 1140px;
  margin: 0 auto !important;
  float: none !important;
  width: auto !important;
}

#footer .one_quarter,
#footer .one_quarter.first {
  float: none !important;
  width: 220px !important;
  margin: 0 !important;
  display: block !important;
}