:root{--kvg-green:#007b3d; --kvg-black:#111; --nav-h:100px;}
*, *::before, *::after{box-sizing:border-box;}
.bg-green {background:#00580F;}
.bg-gray {background:#e7e8e9;}
html, body{height:100%;}
body{margin:0; font-family:"ff-dax-pro",sans-serif; font-weight:400; font-style:normal; background:#fff;}

h5 {font-size:18px; line-height: 24px;}

.page-offset{padding-top:var(--nav-h);}
section[id]{scroll-margin-top:var(--nav-h);}
.navbar-kvg{background:#fff; border-bottom:1px solid rgba(0,0,0,.08);}
#siteNav {height:var(--nav-h);}
#siteNav .container-fluid {height:var(--nav-h); display:flex; align-items:center;}
.nav-logo{height:48px; width:auto; display:block;}
.navbar-kvg .nav-link{color:var(--kvg-green); text-transform:uppercase; letter-spacing:.05em; font-weight:700; padding:0; margin:0 12px; line-height:1;}
.navbar-kvg .nav-link:hover,
.navbar-kvg .nav-link:focus{color:var(--kvg-black);}
.navbar-kvg .nav-link.active{color:var(--kvg-green); position:relative;}
.navbar-kvg .nav-link.active::after{content:""; position:absolute; left:0; right:0; bottom:-10px; height:2px; background:var(--kvg-green); border-radius:2px;}
.btn-outline-kvg{color:var(--kvg-green); border:2px solid var(--kvg-green);}
.btn-outline-kvg:hover{background:var(--kvg-green); border-color:var(--kvg-green); color:#fff;}
.navbar-kvg .navbar-toggler{border-color:rgba(0,0,0,.15);}
.navbar-kvg .navbar-toggler-icon{filter:invert(1) grayscale(1);}
@media (max-width:991.98px){
#siteNav {position:fixed; top:0; left:0; right:0;}
#siteNav .container-fluid {height:var(--nav-h);}
#siteNav .navbar-collapse {position:absolute; top:100%; left:16px; right:16px; margin-top:10px; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:14px; padding:12px 14px; box-shadow:0 10px 30px rgba(0,0,0,.12);}	
  .navbar-kvg .navbar-collapse{margin-top:10px; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:14px; padding:12px 14px;}
  .navbar-kvg .nav-link{padding:10px 0; margin:0;}
  .navbar-kvg .nav-link.active::after{display:none;}
}
.hero{position:relative; height:100vh; min-height:600px; overflow:hidden; background:#000;}
.hero__video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.01);}
.hero__overlay{position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.20) 60%, rgba(0,0,0,.10) 100%);}
.hero__content{position:relative; z-index:2; height:100%; display:flex; align-items:center;}


.video-mobile video{object-fit:cover;}


.btn-kvg{background:var(--kvg-green); border-color:var(--kvg-green); color:#fff;}
.btn-kvg:hover{filter:brightness(.95); color:#fff;}
.kvg-list{list-style:none; margin:0; padding:0;}
.kvg-list li{position:relative; padding-left:28px; line-height:1.6;}
.kvg-time{color:var(--kvg-green); font-weight:700;}
.kvg-list--dot li::before{content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:8px; height:8px; background:var(--kvg-green); border-radius:50%;}
.kvg-list--check li::before{content:"✓"; position:absolute; left:0; top:50%; transform:translateY(-50%); color:var(--kvg-green); font-weight:800; font-size:1.05em; line-height:1;}
@media (max-width:575.98px){
  .kvg-list li{padding-left:34px; line-height:1.75;}
  .kvg-list--dot li::before{width:10px; height:10px;}
  .kvg-list--check li::before{font-size:1.15em;}
}
.service-img{position:relative; max-width: 400px;}
.service-img::after{content:""; position:absolute; inset:0; background:url("../img/arrow.png") center/cover no-repeat; opacity:.20; pointer-events:none;}
.kvg-link:hover{ text-decoration:none !important; }
.kvg-social-icon{ width:28px; height:auto; display:block; }
.ig-fallback {position:relative; display:block; text-decoration:none;}
.ig-fallback__badge {position:absolute; left:16px; bottom:16px; display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:999px; background:rgba(0,0,0,.55); color:#fff; font-weight:600; backdrop-filter:blur(6px);}
.ig-fallback:hover .ig-fallback__badge {background:rgba(0,0,0,.75);}


#siteNav .nav-top {display:flex; align-items:center; gap:1rem; width:100%;}
#siteNav .nav-right {line-height:1.1; text-align:right;}
#siteNav .nav-event-title {font-weight:700; font-size:0.95rem; white-space:nowrap;}
#siteNav .nav-countdown {display:inline-flex; align-items:baseline; gap:0.35rem; font-size:0.9rem; white-space:nowrap;}
#siteNav .cd-part {display:inline-flex; align-items:baseline; gap:0.25rem;}
#siteNav .cd-num {font-weight:800; font-variant-numeric:tabular-nums;}
#siteNav .cd-lbl {font-size:0.75em; opacity:0.8;}
#siteNav .cd-sep {opacity:0.5;}

@media (max-width:991.98px){
#siteNav .container-fluid {min-width:0;}
#siteNav .navbar-brand {min-width:0;}
#siteNav .nav-right {min-width:0; max-width:100%; overflow:hidden;}
#siteNav .nav-event-title {white-space:normal;}
#siteNav .nav-countdown {white-space:normal; flex-wrap:wrap;}
}


#program {overflow-x:clip;}
#program .row {overflow-x:clip;}
#program .kvg-list li {overflow-wrap:anywhere; word-break:break-word;}
#program img {max-width:100%; height:auto;}

.instagram-media {max-width:100% !important; width:100% !important;}
.instagram-media iframe {max-width:100% !important;}
section .instagram-media {max-width:100% !important;}
section:has(.instagram-media) {overflow-x:clip;}
.nav-event-title {text-align:right;}
.nav-event-title h3 {margin:0; position:relative; display:inline-block; white-space:nowrap; text-align:right; font-size:24px;}
.nav-event-title h3::before {content:"Bečváry 20. 5. 2026"; visibility:hidden; pointer-events:none; display:block;}
.nav-event-title .nav-title {position:absolute; right:0; top:0; white-space:nowrap; opacity:0; transition:opacity .25s ease;}
.nav-event-title .nav-title.is-active {opacity:1;}

.machines-list > * {display:inline;}
.machines-list > *:not(:last-child)::after {content:" |"; color:rgba(255,255,255,.5); padding:0 0.5ch;}
.machines-list > span,
.machines-list > strong {white-space:nowrap;}

.bg-green .kvg-list--inline li {padding-left:0; line-height:1.6; text-align:right;}
.bg-green .kvg-list--inline.kvg-list--dot li::before,
.bg-green .kvg-list--inline.kvg-list--check li::before {position:static; left:auto; top:auto; right:auto; transform:none; display:inline-block; margin-right:8px; vertical-align:middle;}
.bg-green .kvg-list--inline.kvg-list--dot li::before {content:""; width:8px; height:8px; background:#fff; border-radius:50%;}
.bg-green .kvg-list--inline.kvg-list--check li::before {content:"✓"; color:#fff; font-weight:800; font-size:1.05em; line-height:1;}

@media (max-width:575.98px){
.bg-green .kvg-list--inline li {line-height:1.75;}
.bg-green .kvg-list--inline.kvg-list--dot li::before {width:10px; height:10px;}
.bg-green .kvg-list--inline.kvg-list--check li::before {font-size:1.15em;}
}


.gallery-badge {position: absolute; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.65); color: #fff; font-weight: 600; font-size: 1rem; padding: 0.4rem 0.6rem; line-height: 1;}

.map-embed {position: relative;}
.map-embed iframe {pointer-events: none;}
.map-embed.is-active iframe {pointer-events: auto;}
.map-embed-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.25);
}
.map-embed.is-active .map-embed-overlay {display: none;}
.map-embed-hint {
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-weight: 600;
    padding: 0.6rem 1rem;
    border-radius: 999px;
    font-size: 0.95rem;
}

@media (max-width:991.98px){
    #siteNav{height:auto;}
    #siteNav .container-fluid{height:auto; flex-wrap:wrap; align-items:center;}
    #siteNav .navbar-brand{order:1;}
    #siteNav .navbar-toggler{order:2; margin-left:auto;}
    #siteNav .nav-right{order:3; width:100%; margin-top:0.25rem; display:flex; flex-direction:column; align-items:center; text-align:center;}
    #siteNav .nav-event-title{text-align:center; white-space:normal;}
    #siteNav .nav-event-title h3{white-space:normal; text-align:center; font-size:1.5rem;}
    #siteNav .nav-countdown{justify-content:center; white-space:normal; flex-wrap:wrap;}
}

@media (max-width:767.98px){
#co-uvidite .service-item .row {margin-left:0; margin-right:0; text-align:left;}
#co-uvidite .service-img {max-width:none; padding:2rem 0 2rem !important; display:flex; justify-content:center;}
#co-uvidite .service-img::after {content:none;}
#co-uvidite .service-img img {width:min(86vw,320px); aspect-ratio:1/1; object-fit:cover; object-position:50% 50%; border-radius:50%; display:block; margin:0; box-shadow:0 0 0 16px #00580F, 0 0 0 32px rgba(255,255,255,0.18);}
#co-uvidite .service-text {padding-left:1rem !important; padding-right:1rem !important; padding-top:1.25rem !important; text-align:left !important;}
#co-uvidite .service-text.px-5 {padding-left:1rem !important; padding-right:1rem !important;}
#co-uvidite .service-text.px-md-3 {padding-left:1rem !important; padding-right:1rem !important;}
#co-uvidite .machines-list {text-align:left !important;}
#co-uvidite .kvg-list--inline {text-align:left !important;}
#co-uvidite .kvg-list--inline li {text-align:left !important;}
}

.cookiebar {position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999; background: rgba(0,0,0,0.95); color: #fff; padding: 1rem; transform: translateY(100%); transition: transform 0.3s ease;}
.cookiebar:not([hidden]) {transform: translateY(0);}
.cookiebar__inner {max-width: 1200px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 1rem;}
.cookiebar__text p {margin: 0.25rem 0 0 0; opacity: 0.85;}
.cookiebar__actions {display: flex; gap: 0.5rem; flex-wrap: wrap; justify-content: flex-end;}
@media (max-width: 576px) {.cookiebar {padding-bottom: calc(1rem + env(safe-area-inset-bottom));}}

.thanks-page {margin-top:100px;}
@media (min-width: 768px) {
  .thanks-page {min-height: 70vh;}
}