/* ==========================================================================
   Hlavná stránka (Domov)
   1. Články: Porto ich vykresľuje ako "masonry" (absolútne pozície z JS,
      rôzne vysoké stĺpce, dlhé perexy). Tu sú z nich rovnaké karty ako vo
      výpise Aktualít (article-grid.css): pomer obrázka 4:3 s orezaním zhora,
      dátum nad nadpisom, bordový nadpis, orezaný perex, tlačidlo dole.
      Inline štýly masonry sa prebíjajú cez !important. Prvý článok na prvej
      strane je veľká "hero" karta cez celú šírku (od 768 px), ako v Aktualitách.
   2. Stránkovanie v bordovo-zlatých farbách (šípka bez textu "Next").
   3. Boxy Krstné/Sobášne náuky (.rkfu-icon-box-bgcolor): text vľavo, bordový
      nadpis a ikona, čitateľná tabuľka dní.
   4. Banery v pravom stĺpci: rovnaký rám, tieň a zdvih pri hover.
   Farby a písma rovnaké ako v article-cards.css a article-grid.css.
   Cieľ: body.home (téma Porto + WPBakery).
   ========================================================================== */

/* --- Premenné --------------------------------------------------------------- */
body.home {
  --home-wine: #6b1420;                           /* farba hlavičky */
  --home-bg: #762833;                             /* farba hlavičky + 8 % bielej */
  --home-gold: #d9b45c;                           /* zlatá – okraje, akcenty */
  --home-cream: #fffaf2;                          /* krémová */
  --home-text: #3a3330;                           /* text perexu */
  --home-line: rgba(217, 180, 92, .45);           /* jemný zlatý okraj */
  --home-radius: 3px;
  --home-shadow: 0 1px 4px rgba(60, 30, 20, .06);
  --home-shadow-hover: 0 10px 24px rgba(60, 30, 20, .14);
}

/* --- 1. Články: mriežka rovnakých kariet ---------------------------------------------- */
body.home .posts-masonry .posts-container.row {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(max(min(240px, 100%), calc((100% - 48px) / 3)), 1fr));   /* najviac 3 stĺpce */
  gap: 24px;
  height: auto !important;
  margin: 0 !important;
  position: static !important;
}

body.home .posts-masonry .posts-container.row::before,
body.home .posts-masonry .posts-container.row::after {
  display: none;
}

body.home .posts-masonry .posts-container > article.post {
  display: flex;
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
}

body.home .posts-masonry article.post .grid-box {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
  border: 1px solid var(--home-line);
  border-radius: var(--home-radius);
  background: #fff;
  box-shadow: var(--home-shadow);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body.home .posts-masonry article.post:hover .grid-box,
body.home .posts-masonry article.post:focus-within .grid-box {
  transform: translateY(-3px);
  border-color: var(--home-gold);
  box-shadow: var(--home-shadow-hover);
}

/* obrázok: pomer 4:3, orezanie zhora */
body.home .posts-masonry article.post .post-image {
  order: 1;
  margin: 0;
  overflow: hidden;
  background: var(--home-cream);
}

body.home #content .posts-masonry article.post .post-image .img-thumbnail {   /* #content: prebije article-images.css */
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.home .posts-masonry article.post .post-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center top;
  transition: transform .5s ease;
}

body.home .posts-masonry article.post:hover .post-image img {
  transform: scale(1.04);
}

body.home .posts-masonry article.post .post-image .zoom {
  display: none;
}

/* dátum, nadpis, perex, tlačidlo */
body.home .posts-masonry article.post .post-meta {
  order: 2;
  margin: 0;
  padding: 14px 18px 0;
}

body.home .posts-masonry article.post .post-meta:not(:has(.meta-date)) {
  display: none;
}

body.home .posts-masonry article.post .post-content {
  order: 3;
  flex: 1;
  margin: 0;
  padding: 8px 18px 0;
}

body.home .posts-masonry article.post .entry-title {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

body.home .posts-masonry article.post .entry-title a,
body.home .posts-masonry article.post .entry-title a:hover,
body.home .posts-masonry article.post .entry-title a:focus {
  color: var(--home-wine);                        /* zlatý text na bielej mal slabý kontrast */
  text-decoration: none;
}

body.home .posts-masonry article.post .post-excerpt {
  margin: 0;
  color: var(--home-text);
  font-size: 14px;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}

body.home .posts-masonry article.post .clearfix {
  order: 4;
  margin-top: auto;
  padding: 14px 18px 18px;
}

/* hero karta: prvý článok na prvej strane je veľká karta cez celú šírku (od 768 px) */
@media (min-width: 768px) {
  body.home:not(.paged) .posts-masonry .posts-container > article.post:first-of-type {
    grid-column: 1 / -1;
  }

  body.home:not(.paged) .posts-masonry .posts-container > article.post:first-of-type .grid-box {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    grid-template-rows: auto 1fr auto;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .post-image {
    grid-column: 1;
    grid-row: 1 / 4;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .post-image img {
    height: 100%;
    aspect-ratio: 11 / 10;                        /* vyššie ako text, aby obrázok vyplnil celú kartu */
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .post-meta {
    grid-column: 2;
    grid-row: 1;
    padding: 26px 28px 0;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .post-content {
    grid-column: 2;
    grid-row: 2;
    padding: 10px 28px 0;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .entry-title {
    margin-bottom: 12px;
    font-size: 24px;
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .post-excerpt {
    font-size: 15px;
    -webkit-line-clamp: 7;
    line-clamp: 7;
  }

  body.home:not(.paged) .posts-masonry article.post:first-of-type .clearfix {
    grid-column: 2;
    grid-row: 3;
    padding: 16px 28px 26px;
  }
}

/* --- 2. Stránkovanie ------------------------------------------------------------------- */
body.home .pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 28px 0 8px;
}

body.home .pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  margin: 0;
  padding: 0 14px;
  border: 1px solid var(--home-line);
  border-radius: var(--home-radius);
  background: #fff;
  color: var(--home-wine);
  font-family: "PT Serif", Georgia, serif;
  font-size: 15px;
  line-height: 1;
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}

body.home .pagination a.page-numbers:hover,
body.home .pagination a.page-numbers:focus-visible {
  border-color: var(--home-gold);
  box-shadow: inset 0 0 0 1px var(--home-gold);
  outline: none;
}

body.home .pagination .page-numbers.current {
  border-color: var(--home-bg);
  background: var(--home-bg);
  color: var(--home-cream);
}

body.home .pagination .page-numbers.dots {
  min-width: 0;
  padding: 0 4px;
  border-color: transparent;
  background: transparent;
}

/* "Next" je anglicky – ostáva len šípka */
body.home .pagination .page-numbers.next,
body.home .pagination .page-numbers.prev {
  font-size: 0;
  text-indent: 0;                                 /* téma tu skrýva text cez text-indent: -9999px, čo odsunie aj šípku */
}

body.home .pagination .page-numbers.next i,
body.home .pagination .page-numbers.prev i {
  display: none;                                  /* stará ikona (FA5) nemá vo Font Awesome 6 znak */
}

body.home .pagination .page-numbers.next::before,
body.home .pagination .page-numbers.prev::before {
  display: none;                                  /* prázdny pseudo-prvok témy (pôvodná ikona) */
}

body.home .pagination .page-numbers.next::after,
body.home .pagination .page-numbers.prev::after {
  font-family: "PT Serif", Georgia, serif;
  font-size: 18px;
  font-weight: 400;
}

body.home .pagination .page-numbers.next::after {
  content: "\2192";                              /* → */
}

body.home .pagination .page-numbers.prev::after {
  content: "\2190";                              /* ← */
}

/* --- 3. Boxy Krstné / Sobášne náuky ---------------------------------------------------- */
body.home .rkfu-icon-box-bgcolor .featured-box {
  min-height: 0;
  border: 1px solid var(--home-line);
  border-radius: var(--home-radius);
  background: #fff;
  box-shadow: var(--home-shadow);
}

body.home .rkfu-icon-box-bgcolor .featured-box .box-content {
  height: auto !important;                        /* téma tu nastavuje inline výšku (vyrovnanie boxov) */
  margin: 0;                                      /* téma tu ponechávala miesto pre plávajúcu ikonu */
  padding: 24px 26px 22px;
  background: transparent;                        /* téma tu mala krémové pozadie */
  color: var(--home-text);
  font-size: 15px;
  line-height: 1.65;
  text-align: left;
}

/* ikona: bordový kruh so zlatým symbolom a zlatým okrajom, v toku textu vľavo */
body.home .rkfu-icon-box-bgcolor .featured-box .icon-featured {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin: 0 0 14px;
  border: 2px solid var(--home-gold);
  border-radius: 50%;
  background: var(--home-bg);
  color: var(--home-gold);
  font-size: 22px;
  line-height: 1;
}

/* hover efekt témy (rozťahujúci sa kruh okolo ikony) pri statickej ikone nepasuje */
body.home .rkfu-icon-box-bgcolor .featured-box .icon-featured::after {
  display: none;
}

/* hover: box sa nadvihne ako karty; ikona si necháva farby (téma ju prefarbovala na zlatú so zlatým symbolom) */
body.home .rkfu-icon-box-bgcolor .featured-box {
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body.home .rkfu-icon-box-bgcolor .featured-box:hover {
  transform: translateY(-3px);
  border-color: var(--home-gold);
  box-shadow: var(--home-shadow-hover);
}

body.home .rkfu-icon-box-bgcolor .featured-box:hover .icon-featured,
body.home .rkfu-icon-box-bgcolor .featured-box.featured-box-effect-3:hover .icon-featured {
  border-color: var(--home-gold);
  background-color: var(--home-bg) !important;    /* téma tu používa !important */
  box-shadow: none;
  color: var(--home-gold) !important;
  transform: none;
}

body.home .rkfu-icon-box-bgcolor .cs-fancybox-heading {
  margin: 0 0 10px;
  color: var(--home-wine);                        /* bledozlatý nadpis mal slabý kontrast */
  font-size: 20px;
  line-height: 1.3;
  text-align: left !important;
}

body.home .rkfu-icon-box-bgcolor .box-content p {
  margin: 0 0 10px;
  text-align: left !important;                    /* v obsahu je inline text-align: center */
}

body.home .rkfu-icon-box-bgcolor .rkfu-table-label {
  margin: 14px 0 4px;
  color: var(--home-wine);
  font-weight: 700;
  text-align: left !important;
}

body.home .rkfu-icon-box-bgcolor .rkfu-table-label span {
  text-decoration: none;
}

body.home .rkfu-icon-box-bgcolor table.rkfu-sobas-nauka {
  width: 100%;
  margin: 0 0 8px;
  border-collapse: collapse;
}

body.home .rkfu-icon-box-bgcolor table.rkfu-sobas-nauka td {
  padding: 4px 8px 4px 0;
  border: 0;
  border-bottom: 1px solid rgba(217, 180, 92, .3);
  text-align: left;
  vertical-align: top;
}

body.home .rkfu-icon-box-bgcolor table.rkfu-sobas-nauka td:first-child {
  width: 5.5em;
  color: var(--home-wine);
  font-weight: 700;
}

body.home .rkfu-icon-box-bgcolor table.rkfu-sobas-nauka td:nth-child(2) {
  width: 1.5em;
  color: var(--home-gold);
  text-align: center;
}

body.home .rkfu-icon-box-bgcolor .box-content a {
  color: var(--home-wine);
  text-decoration: underline;
  text-decoration-color: var(--home-gold);
  text-underline-offset: 3px;
}

/* --- 4. Banery v pravom stĺpci -------------------------------------------------------- */
body.home .sidebar-content .widget_media_image {
  margin-bottom: 14px;
}

body.home .sidebar-content .widget_media_image img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--home-line);
  border-radius: var(--home-radius);
  box-shadow: var(--home-shadow);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body.home .sidebar-content .widget_media_image a:hover img,
body.home .sidebar-content .widget_media_image a:focus-visible img,
body.home .sidebar-content .widget_media_image figure:hover img {
  transform: translateY(-3px);
  border-color: var(--home-gold);
  box-shadow: var(--home-shadow-hover);
}

/* --- Menej pohybu ---------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  body.home .posts-masonry article.post .grid-box,
  body.home .posts-masonry article.post .post-image img,
  body.home .rkfu-icon-box-bgcolor .featured-box,
  body.home .sidebar-content .widget_media_image img {
    transition: none;
  }

  body.home .posts-masonry article.post:hover .grid-box,
  body.home .posts-masonry article.post:focus-within .grid-box,
  body.home .rkfu-icon-box-bgcolor .featured-box:hover,
  body.home .posts-masonry article.post:hover .post-image img,
  body.home .sidebar-content .widget_media_image a:hover img,
  body.home .sidebar-content .widget_media_image a:focus-visible img,
  body.home .sidebar-content .widget_media_image figure:hover img {
    transform: none;
  }
}
