/* ----------------------------- style.css ----------------------------- */
:root{
  /* Minimalistická světlá paleta */
  --bg: #ffffff;              /* bílá */
  --bg-soft: #fffaf3;         /* velmi světlá krémová */
  --text: #0b0f14;            /* téměř černá */
  --muted: #5b6470;           /* jemná šedá pro sekundární text */
  --border: #e9edf1;          /* velmi světlá šedá */
  --cream: #f7f2ec;           /* latte/krémová pro tlačítka */
  --cream-strong: #e9d8c3;    /* hover */
  --accent: #9e9386;          /* decentní akcent (káva/karamel) */
  --radius-xl: 18px;
  --radius-md: 12px;
  --shadow: 0 10px 30px rgba(0,0,0,.06);
  --maxw: 1240px;
}
h1,h2,h3,h4,h5 {font-weight: 200;font-family: "Playfair", serif;}
html,body{font-family: "Roboto", sans-serif;background:var(--bg);color:var(--text);scroll-behavior:smooth;}
#wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
p {font-weight: 300;}
/* Navigace */
.site-nav{position:sticky;top:0;z-index:101;background:rgba(255,255,255,.85);backdrop-filter: blur(8px);border-bottom:1px solid var(--border);} 
.site-nav .nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;}
.brand-title{font-size: 22px;font-weight:300;font-family: "Playfair", serif;}
.logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--cream),#fdf7ee);border:1px solid var(--border);box-shadow: var(--shadow);} 
.nav-list{list-style:none;display:flex;gap:22px;margin:0;padding:0}
.nav-list a{color:var(--text);text-decoration:none;opacity:.9}
.nav-list a:hover{opacity:1}

/* Tlačítka */
.btn{display:inline-flex;align-items:center;gap:10px;padding:10px 25px;border-radius:0px;text-decoration:none;font-weight:600;border:none;box-shadow: none;font-size: 14px;}
.btn-cream{background:var(--accent);color:#fff}
.btn-cream:hover{background:var(--cream-strong)}
.btn-outline{background:#fff;color:var(--text)}
.btn-outline:hover{background:#f9f9f9}

/* Hero s fotkou na pozadí, min-height 600px */
.hero{position:relative;min-height:600px;overflow:hidden;margin:28px 0 36px;display: flex;justify-content: center;align-items: center;text-align: center;}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  /* POUŽIJ PROMĚNNOU S FALBACKEM */
  background-image: var(--hero-bg, url('https://images.unsplash.com/photo-1523419409543-9b9f0c8f9a88?q=80&w=2400&auto=format&fit=crop'));
  background-size:cover;
  background-position:center;
}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(270deg, rgb(0 0 0 / 30%), rgb(0 0 0 / 50%));}
.hero-content{position:relative;isolation:isolate;text-align: left; margin: auto auto auto 45px;padding:72px 24px;max-width:920px; z-index: 99;color: var(--bg);}
.hero h1{text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);font-size: clamp(32px, 5vw, 68px);margin:0 0 20px;font-weight: 200;}
.hero p{font-size: clamp(16px, 2.2vw, 22px);margin-bottom:24px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items: flex-start;justify-content: flex-start;margin-top: 35px;}

/* Základní bloky */
.section{margin:140px 0}
.card{padding:28px; border: none;}
.section-title{font-size:40px;margin:0 0 45px;text-align: center;font-weight: 200;}
.lead{color:var(--accent);font-size: 36px;text-align: center;font-family: "Playfair", serif;font-weight: 200;max-width: 860px;margin: auto;}
.small{font-size:13px;color:var(--muted)}
.list{margin:0;padding-left:18px}
.list.compact li{margin-bottom:6px;margin-left: 15px;list-style-type: disc;}
#video {margin: auto;}
#video iframe {width: 100%;height: 100%;}
#o-objektu {margin: 140px auto;}
#cenik .list {font-size: 14px;display: flex;flex-wrap: wrap;padding: 0 ;}
/* Feature boxy */
#vybaveni {padding: 65px 45px;}
.feature{gap:20px;padding:18px;display: flex;align-items: center;justify-content: center;}
.feature img{width:40px;height:40px;flex:0 0 40px;filter: drop-shadow(0 4px 10px rgba(0,0,0,.08));}
.feature-title{font-size:18px;margin:0 0 4px}
.feature .muted {font-size: 14px;}
.muted{margin:0;color:var(--muted)}

/* Galerie */
.gallery{--bs-gutter-x: 1.25rem;}
.gallery figure{position:relative;overflow:hidden;border-radius:0px;border:1px solid var(--border);background:#fff;cursor:zoom-in}
.gallery img{display:block;width:100%;height:280px;object-fit:cover;transition: transform .5s ease}
.gallery figure:hover img{transform:scale(1.04)}

/* Lightbox */
#lightbox{position:fixed;inset:0;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;padding:24px;z-index:1000}
#lightbox img{max-width:min(1200px,92vw);max-height:80vh;border-radius:0px;border:none;box-shadow: 0 10px 30px rgba(0,0,0,.4)}
#lightbox button{position:absolute;top:18px;right:18px;background:rgba(0,0,0,.6);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:10px 12px;cursor:pointer}

/* Video */
.video-wrap{position:relative;aspect-ratio:16/9;border-radius:0px;overflow:hidden;border:1px solid var(--border);background:#000}
.video-wrap img{display:block;width:100%;height:100%;object-fit:cover}
.video-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(0deg, rgba(0,0,0,.35), rgba(0,0,0,.35));}
.play-btn{display:inline-flex;align-items:center;gap:12px;padding:14px 20px;border-radius:999px;color:#0b0f14;font-weight:800;cursor:pointer;box-shadow: var(--shadow);border: none;color: #fff;}
.play-btn svg{width:18px;height:18px}

/* Pricing */
.pricing{display:flex;flex-direction:column;gap:14px}
.price-row{display:flex;gap:14px;flex-wrap:wrap}
.price-item{flex:1 1 320px;padding:16px}
.price-item:nth-child(2){border-left: 1px solid var(--border);border-right: 1px solid var(--border);}
.price-main{display:flex;align-items:center;gap:0px;justify-content: center;flex-direction: column;}
.price-amount{font-size:36px;font-weight:600;color:var(--accent)}
.price-meta{color:var(--muted)}
.price-note{color:var(--muted);margin-top:4px;text-align: center;font-size: 12px;}
.divider{height:1px;background:var(--border);margin:35px 0}

/* Iframe boxy */
.iframe-box{overflow:hidden}
.iframe-box iframe{width:100%;height:100%;border:0}
.sticky-box {position: sticky;top:100px;}

/* Footer */
.site-footer{margin:72px 0 24px;}
.footer-card{padding:80px 10px;}
.footer-title{margin:0 0 15px;text-align: center;}
.site-footer .list {list-style-type: none;padding: 0;margin: 0;font-size: 14px;text-align: center;}
.site-footer .list a {color: inherit;text-decoration: none;}
.site-footer .small {text-align: center;margin: 35px 0 0;}
/* Bootstrap row spacing */
.row{--bs-gutter-x: 1.25rem;}

/* --- Slick Galerie --- */
.slick-gallery{ position: relative; }
.slick-gallery .gallery-slide{ padding: 0 .625rem; } /* mezera mezi snímky */
.slick-gallery figure{
  position: relative; overflow: hidden;background:#fff; cursor: zoom-in; margin:0;
}
.slick-gallery img{display:block; width:100%; height:280px; object-fit:cover; transition: transform .5s ease;}
.slick-gallery figure:hover img{ transform: scale(1.04); }

/* Šipky */
.gallery-nav{
  display:flex; justify-content:flex-end; gap:10px; margin-bottom:10px;
}
.gallery-arrow{
  display:inline-flex; align-items:center; justify-content:center;width:40px; height:40px; border-radius:999px; border:1px solid var(--border);background: var(--cream); color:#3a2d1e; box-shadow: var(--shadow);
}
.gallery-arrow:hover{ background: var(--cream-strong); }
.gallery-prev{ }
.gallery-next{ }

/* Slick reset – bez dots */
.slick-dots{ display:none !important; }

/* Responsivita (když je méně místa) – výška obrázku mírně dolů */
@media (max-width: 991.98px){
  .slick-gallery img{ height:240px; }
}
@media (max-width: 575.98px){
  .slick-gallery img{ height:220px; }
}

/* ===== Popup Box ===== */
.popup-box {
  position: fixed;
  bottom: 20px;
  right: 20px;
  max-width: 360px;
  background: #9d9386;
  color: #fff;
  border-radius: 10px;
  padding: 15px 20px;
  z-index: 9999;
  opacity: 0;
  transform: translateY(30px);
  pointer-events: none;
  transition: all 0.4s ease;
}

.popup-box.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.popup-box h4 {
  margin-top: 0;
  font-weight: 300;
  margin-bottom: 5px;
  font-size: 20px;
}

.popup-box p {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
}
.popup-box a {
  color: #fff;
}
.popup-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: none;
  background: none;
  font-size: 22px;
  color: #fff;
  cursor: pointer;
  transition: color 0.2s ease;
}

.popup-close:hover {
  color: #000;
}

/* Mobile */
@media (max-width: 600px) {
  .popup-box {
    right: 10px;
    left: 10px;
    bottom: 10px;
    max-width: 300px;
  }
}