*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --color-bg:#f8f7f4;--color-text:#1e1e1e;--color-muted:#666;
  --color-primary:#c0392b;--color-accent:#e67e22;
  --color-surface:#fff;--color-border:#e0ddd8;
  --font-display:'Playfair Display',Georgia,serif;
  --font-sans:'Inter',system-ui,sans-serif;
  --radius:10px;--shadow:0 4px 20px rgba(0,0,0,.10);--max-width:1100px;
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.7}
.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}

/* HERO */
.hero{
  position:relative;width:100%;min-height:100vh;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:linear-gradient(to bottom,rgba(0,0,0,.30) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,.45) 100%),
    url('/img/hero.jpg') center/cover no-repeat;
}
.hero-cane{position:absolute;bottom:1;left:3%;height:55%;width:auto;object-fit:contain;filter:drop-shadow(4px 4px 12px rgba(0,0,0,.5));z-index:2}
.hero-poles{position:absolute;bottom:1;right:3%;height:60%;width:auto;object-fit:contain;filter:drop-shadow(-4px 4px 12px rgba(0,0,0,.5));z-index:2}
.hero-content{position:relative;z-index:3;text-align:center;color:#fff;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}
.hero-title{font-family:var(--font-display);font-style:italic;font-size:clamp(2.8rem,9vw,6rem);font-weight:700;line-height:1.05;text-shadow:2px 3px 20px rgba(0,0,0,.6)}
.hero-tagline{line-height:1.3;text-align:center}
.tagline-do{font-family:var(--font-sans);font-size:clamp(1.1rem,3vw,1.6rem);font-weight:400;opacity:.9;margin-right:.4rem}
.tagline-kaufland{font-family:var(--font-sans);font-size:clamp(1.2rem,3.5vw,1.8rem);font-weight:700;color:#ff6b6b;text-decoration:line-through;text-decoration-color:#ff3333;text-decoration-thickness:3px;letter-spacing:.05em}
.tagline-hory{display:block;font-family:var(--font-sans);font-size:clamp(1.6rem,5vw,2.8rem);font-weight:700;color:#fff;letter-spacing:.08em;text-shadow:2px 2px 15px rgba(0,0,0,.7);margin-top:.2rem}
.hero-nav{display:flex;align-items:center;gap:1.5rem;background:rgba(0,0,0,.50);backdrop-filter:blur(6px);padding:.85rem 3rem;border-radius:4px;border:1px solid rgba(255,255,255,.15)}
.hero-nav a{color:#fff;text-decoration:none;font-size:1.1rem;font-weight:600;letter-spacing:.05em;transition:opacity .2s}
.hero-nav a:hover{opacity:.75}
.nav-sep{color:rgba(255,255,255,.5);font-size:1.2rem}
.hero-content::after{content:'↓';display:block;font-size:1.5rem;opacity:.6;animation:bounce 2s infinite;margin-top:.5rem}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}

/* SEKCE */
.section{padding:5rem 0}
.section-title{font-family:var(--font-display);font-size:2rem;margin-bottom:2.5rem;position:relative;display:inline-block}
.section-title::after{content:'';display:block;width:52px;height:3px;background:var(--color-primary);margin-top:.5rem;border-radius:2px}

/* BLOG */
.blog-section{background:var(--color-bg)}
.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}
.post-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s,transform .2s}
.post-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.post-card-body{padding:1.5rem}
.post-meta{display:flex;gap:.75rem;align-items:center;margin-bottom:.75rem}
.post-date{font-size:.82rem;color:var(--color-muted)}
.post-country{font-size:.78rem;font-weight:600;background:#fef3e2;color:var(--color-accent);padding:.15rem .6rem;border-radius:50px;border:1px solid #fde8c0}
.post-title{font-family:var(--font-display);font-size:1.15rem;margin-bottom:.75rem}
.post-title a{text-decoration:none;color:var(--color-text)}
.post-title a:hover{color:var(--color-primary)}
.post-summary{font-size:.9rem;color:var(--color-muted);margin-bottom:1rem}
.post-read-more{font-size:.88rem;font-weight:600;color:var(--color-primary);text-decoration:none}
.post-read-more:hover{text-decoration:underline}
.no-posts{text-align:center;padding:3rem;background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius);font-size:1rem;color:var(--color-muted)}

/* GALERIE */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}
.gallery-grid a{display:block;overflow:hidden;border-radius:var(--radius)}
.gallery-grid img{width:100%;height:200px;object-fit:cover;display:block;transition:transform .3s}
.gallery-grid a:hover img{transform:scale(1.05)}

/* PAGE HERO */
.page-hero{background:#1e1e1e;color:#fff;padding:4rem 1.5rem 2.5rem;text-align:center}
.page-hero h1{font-family:var(--font-display);font-size:2.5rem;margin:.5rem 0}
.page-hero p{opacity:.7}
.back-link{display:inline-block;color:rgba(255,255,255,.6);text-decoration:none;font-size:.9rem;margin-bottom:.5rem;transition:color .2s}
.back-link:hover{color:#fff}

/* SINGLE POST */
.single-post{max-width:720px;margin:0 auto;font-size:1.05rem;line-height:1.9}
.single-post h2,.single-post h3{font-family:var(--font-display);margin:2rem 0 1rem}
.single-post p{margin-bottom:1.2rem}
.single-post img{max-width:100%;border-radius:var(--radius);margin:1.5rem 0}

/* FOOTER */
.site-footer{background:#111;color:rgba(255,255,255,.4);padding:1.5rem 0;text-align:center;font-size:.85rem}

/* RESPONZIVITA */
@media(max-width:768px){.hero-cane{height:50%;left:0}.hero-poles{height:45%;right:0}.hero-nav{padding:.7rem 2rem;gap:1rem}}
@media(max-width:480px){.hero-cane{height:50%}.hero-poles{height:38%}.hero-title{font-size:2.4rem}}

/* ========== GALERIE ========== */

.gallery-index {
  max-width: 1100px;
  margin: 60px auto;
  padding: 0 20px;
}

.gallery-index h1 {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 40px;
  color: #333;
}

.albums-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}

.album-card {
  text-decoration: none;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0,0,0,0.12);
  transition: transform 0.2s, box-shadow 0.2s;
  background: #fff;
  display: block;
}

.album-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.18);
}

.album-thumb {
  width: 100%;
  height: 200px;
  overflow: hidden;
  background: #e8e8e8;
  display: flex;
  align-items: center;
  justify-content: center;
  image-orientation: from-image;
}

.album-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  image-orientation: from-image;
}

.album-no-thumb {
  font-size: 4rem;
}

.album-label {
  padding: 14px 16px;
  font-size: 1.1rem;
  font-weight: 600;
  color: #222;
}

/* ========== ALBUM DETAIL ========== */

.album-detail {
  max-width: 1200px;
  margin: 40px auto;
  padding: 0 20px;
}

.back-link {
  display: inline-block;
  margin-bottom: 20px;
  color: #555;
  text-decoration: none;
  font-size: 0.95rem;
}

.back-link:hover {
  color: #222;
}

.album-detail h1 {
  font-size: 2rem;
  margin-bottom: 8px;
  color: #333;
}

.album-desc {
  color: #666;
  margin-bottom: 30px;
}

.photos-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.photo-item img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  image-orientation: from-image;
  border-radius: 8px;
  display: block;
  transition: opacity 0.2s;
}

.photo-item:hover img {
  opacity: 0.85;
}

/* Skrýt hole na malých displejích */
@media (max-width: 600px) {
  .hero-cane,
  .hero-poles {
    display: none;
  }
}
