/* =========================================================
   lecba-tmou.cz — doplňkové CSS k core-block obsahu
   Vlož do: Vzhled → Přizpůsobit → Doplňkové CSS
   (funguje i beze všeho pluginu navíc — jen native WP bloky)
   ========================================================= */

:root {
  --lt-max-width: 1200px;
  --lt-gap: 32px;
  --lt-radius: 8px;
  --lt-color-primary: #1a1a1a;
  --lt-color-accent: #b08d57; /* uprav dle brand barvy */
  --lt-color-bg-muted: #f7f5f2;
}

/* ---------- obecný layout sekcí ---------- */
.wp-block-group.hero-section,
.wp-block-group.about-section,
.wp-block-group.why-section,
.wp-block-group.gallery-section,
.wp-block-group.benefits-section,
.wp-block-group.testimonials-section,
.wp-block-group.terms-section,
.wp-block-group.guides-section,
.wp-block-group.map-section {
  max-width: var(--lt-max-width);
  margin-inline: auto;
  padding: 64px 20px;
}

/* alignfull — natáhne hero přes celou šířku okna */
.wp-block-group.alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.wp-block-group.hero-section.alignfull {
  padding-left: max(20px, calc((100vw - var(--lt-max-width)) / 2));
  padding-right: max(20px, calc((100vw - var(--lt-max-width)) / 2));
}

/* hero-section layout — dřív dodávala WP core Group block "layout" podpora
   dynamicky za běhu; GenerateBlocks Element blok ji nemá, takže je teď explicitní zde. */
.wp-block-group.hero-section {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.hero-content { flex: 1 1 420px; }
.hero-image { flex: 1 1 320px; max-width: 420px; margin-inline: auto; }
.hero-image img { border-radius: var(--lt-radius); width: 100%; height: auto; }
.caption-text { text-align: center; font-style: italic; opacity: .8; }

/* ---------- ikonový seznam ---------- */
ul.icon-list { list-style: none; margin: 0; padding: 0; }
ul.icon-list .icon-item {
  position: relative;
  padding-left: 32px;
  margin-bottom: 12px;
  line-height: 1.4;
}
ul.icon-list .icon-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 20px;
  height: 20px;
  background-color: var(--lt-color-accent);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-24.4 344.2L118.8 249.3l32.3-32.3 80.5 80.5 168.6-168.6 32.3 32.3z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-24.4 344.2L118.8 249.3l32.3-32.3 80.5 80.5 168.6-168.6 32.3 32.3z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.features-list .icon-item a { text-decoration: none; color: inherit; }
.features-list .icon-item a:hover { color: var(--lt-color-accent); }

/* ---------- tlačítka (core/button) ---------- */
.wp-block-buttons { gap: 16px; margin-top: 16px; flex-wrap: wrap; }
.wp-block-button .wp-block-button__link {
  padding: 14px 28px;
  border-radius: var(--lt-radius);
  font-weight: 600;
  transition: transform .15s ease, background-color .15s ease;
}
.btn-primary .wp-block-button__link { background: var(--lt-color-accent); color: #fff; }
.btn-primary .wp-block-button__link:hover { transform: translateY(-2px); }
.btn-secondary .wp-block-button__link {
  background: transparent;
  border: 2px solid var(--lt-color-primary);
  color: var(--lt-color-primary);
}
.btn-secondary .wp-block-button__link:hover { background: var(--lt-color-primary); color: #fff; }
.btn-text .wp-block-button__link { background: none; padding: 0; color: var(--lt-color-accent); text-decoration: underline; }

/* ---------- grid layouty (core/group s layout:grid) ---------- */
/* display+columns dřív dodávala WP core Group block "layout" podpora dynamicky
   za běhu; GenerateBlocks Element blok ji nemá, takže je teď explicitní zde. */
.wp-block-group.about-grid,
.wp-block-group.why-grid,
.wp-block-group.benefits-grid,
.wp-block-group.testimonials-grid {
  display: grid;
  gap: var(--lt-gap);
  align-items: center;
}
.wp-block-group.about-grid,
.wp-block-group.why-grid {
  grid-template-columns: repeat(2, 1fr);
}
.wp-block-group.benefits-grid,
.wp-block-group.testimonials-grid {
  grid-template-columns: repeat(3, 1fr);
}

.about-grid img,
.why-grid img,
.benefits-grid img { border-radius: var(--lt-radius); width: 100%; height: auto; }

.benefits-list { list-style: none; margin: 0; padding: 0; }
.benefits-list li { margin-bottom: 20px; }

.testimonial-card {
  background: var(--lt-color-bg-muted);
  border-radius: var(--lt-radius);
  padding: 24px;
}
.testimonial-card blockquote {
  margin: 0 0 12px;
  font-style: italic;
  border-left: 3px solid var(--lt-color-accent);
  padding-left: 16px;
}

/* ---------- galerie ---------- */
.chatky-gallery.wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.chatky-gallery img { border-radius: var(--lt-radius); aspect-ratio: 4/3; object-fit: cover; }
.chatky-gallery figcaption { font-size: .85rem; text-align: center; opacity: .75; }

/* ---------- mapa ---------- */
.map-embed { position: relative; width: 100%; padding-bottom: 45%; }
.map-embed iframe {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  border: 0; border-radius: var(--lt-radius);
}

/* ---------- fade-in on scroll ---------- */
.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .6s ease, transform .6s ease;
}
.fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   RESPONZIVITA
   ========================================================= */
@media (max-width: 900px) {
  .wp-block-group.about-grid,
  .wp-block-group.why-grid,
  .wp-block-group.benefits-grid { grid-template-columns: 1fr !important; }
  .wp-block-group.testimonials-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .chatky-gallery.wp-block-gallery { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 600px) {
  .wp-block-group.hero-section,
  .wp-block-group.about-section,
  .wp-block-group.why-section,
  .wp-block-group.gallery-section,
  .wp-block-group.benefits-section,
  .wp-block-group.testimonials-section,
  .wp-block-group.terms-section,
  .wp-block-group.guides-section,
  .wp-block-group.map-section { padding: 40px 16px; }
  .wp-block-group.testimonials-grid { grid-template-columns: 1fr !important; }
  .chatky-gallery.wp-block-gallery { grid-template-columns: repeat(2, 1fr); }
  .wp-block-buttons { flex-direction: column; }
  .wp-block-button { width: 100%; }
  .wp-block-button .wp-block-button__link { text-align: center; display: block; }
}