/* Carpathia Herbarium / Magazín. Zámerne obmedzené na rubriku Magazín. */
body.in-magazin {
  --ch-mag-ink: #213c2c;
  --ch-mag-paper: #f7f5ed;
  --ch-mag-text: #26372d;
  --ch-mag-line: #ced4c9;
  --ch-mag-serif: 'CHLora', Georgia, serif;
  --ch-mag-sans: 'CHManrope', Arial, sans-serif;
}

body.in-magazin.type-posts-listing .content-wrapper,
body.in-magazin.type-post .content-wrapper { background: var(--ch-mag-paper); }

body.in-magazin.type-posts-listing .content-wrapper-in,
body.in-magazin.type-post .content-wrapper-in {
  display: block;
  max-width: 1418px;
  width: min(100% - 48px, 1418px);
  margin-inline: auto;
}

body.in-magazin.type-posts-listing .content-wrapper-in > aside,
body.in-magazin.type-posts-listing .sidebar-left,
body.in-magazin.type-post .content-wrapper-in > aside,
body.in-magazin.type-post .sidebar-left { display: none !important; }

body.in-magazin.type-posts-listing #content,
body.in-magazin.type-post #content {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  float: none !important;
  color: var(--ch-mag-text);
  font-family: var(--ch-mag-sans);
}

body.in-magazin.type-posts-listing #content .content-inner { width: 100%; }
body.in-magazin.type-posts-listing #content .sectionDescription { margin: 0; }
body.in-magazin.type-posts-listing #content .sectionDescription > h1 {
  max-width: 1180px;
  margin: 38px auto 0;
  color: var(--ch-mag-ink);
  font: 600 12px/1.4 var(--ch-mag-sans);
  letter-spacing: .19em;
  text-transform: uppercase;
}
body.in-magazin.type-posts-listing #content .sectionDescription > h1 .pagination-appendix {
  font: inherit;
  letter-spacing: .03em;
  text-transform: none;
}

.ch-magazin { color: var(--ch-mag-text); }
.ch-magazin * { box-sizing: border-box; }
.ch-magazin__intro {
  max-width: 1180px;
  margin: 12px auto 65px;
  text-align: center;
}
.ch-magazin__intro .ch-magazin__kicker { display: none; }
.ch-magazin__intro h2 {
  margin: 0 0 16px;
  color: var(--ch-mag-ink);
  font: 400 clamp(50px, 7vw, 108px)/1.05 var(--ch-mag-serif);
  letter-spacing: -.055em;
  text-wrap: balance;
}
.ch-magazin__intro > p:last-child {
  margin: 0;
  font: 400 clamp(16px, 1.5vw, 23px)/1.45 var(--ch-mag-serif);
}
.ch-magazin__lead {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(315px, .78fr);
  align-items: stretch;
  gap: clamp(28px, 4.5vw, 70px);
  margin: 0 0 100px;
}
.ch-magazin__lead-image { display: block; overflow: hidden; background: #d6dccf; }
.ch-magazin__lead-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 450px;
  object-fit: cover;
  transition: transform .45s ease;
}
.ch-magazin__lead-image:hover img { transform: scale(1.025); }
.ch-magazin__lead-copy {
  align-self: center;
  max-width: 440px;
  padding: 24px 24px 24px 0;
}
.ch-magazin__kicker,
.ch-magazin__category {
  display: block;
  color: var(--ch-mag-ink);
  font: 600 11px/1.5 var(--ch-mag-sans);
  letter-spacing: .18em;
  text-transform: uppercase;
}
.ch-magazin__lead-copy .ch-magazin__kicker { margin: 0 0 42px; }
.ch-magazin__lead-copy h3 {
  margin: 0 0 26px;
  color: var(--ch-mag-ink);
  font: 400 clamp(40px, 3.5vw, 66px)/1.12 var(--ch-mag-serif);
  letter-spacing: -.04em;
  text-wrap: balance;
}
.ch-magazin__lead-copy > p:not(.ch-magazin__kicker) {
  max-width: 36ch;
  margin: 0 0 36px;
  font: 400 17px/1.65 var(--ch-mag-sans);
}
.ch-magazin__text-link {
  display: inline-flex;
  gap: 9px;
  align-items: center;
  padding-bottom: 5px;
  border-bottom: 1px solid currentColor;
  color: var(--ch-mag-ink);
  font: 600 15px/1.3 var(--ch-mag-sans);
  text-decoration: none;
}
.ch-magazin__text-link:hover { color: #527257; }
.ch-magazin__text-link:focus-visible,
.ch-magazin__filters button:focus-visible,
body.in-magazin #newsWrapper a:focus-visible { outline: 2px solid var(--ch-mag-ink); outline-offset: 4px; }
.ch-magazin__archive-head {
  max-width: 1320px;
  margin: 0 auto;
  padding: 42px 0 30px;
  border-top: 1px solid var(--ch-mag-ink);
}
.ch-magazin__archive-head h2 {
  margin: 0 0 34px;
  color: var(--ch-mag-ink);
  font: 400 clamp(46px, 5vw, 76px)/1.1 var(--ch-mag-serif);
  letter-spacing: -.045em;
}
.ch-magazin__filters { display: flex; gap: clamp(17px, 2.5vw, 36px); overflow-x: auto; scrollbar-width: none; }
.ch-magazin__filters[hidden], .ch-magazin__count[hidden] { display: none; }
.ch-magazin__filters::-webkit-scrollbar { display: none; }
.ch-magazin__filters button {
  flex: none;
  padding: 0 0 7px;
  border: 0;
  border-bottom: 1px solid var(--ch-mag-line);
  border-radius: 0;
  background: none;
  color: var(--ch-mag-text);
  font: 500 15px/1.4 var(--ch-mag-sans);
  cursor: pointer;
  white-space: nowrap;
}
.ch-magazin__filters button[aria-pressed="true"] { border-bottom: 2px solid var(--ch-mag-ink); font-weight: 700; }
.ch-magazin__filters button:hover { color: #527257; }
.ch-magazin__count { margin: 15px 0 0; color: #607064; font: 400 12px/1.4 var(--ch-mag-sans); }
.ch-magazin__search[hidden], .ch-magazin__empty[hidden] { display: none; }
.ch-magazin__search {
  display: flex;
  align-items: center;
  gap: 22px;
  width: min(100%, 440px);
  margin: 34px 0 0;
  color: var(--ch-mag-ink);
  font: 500 13px/1.4 var(--ch-mag-sans);
}
.ch-magazin__search span { flex: none; }
.ch-magazin__search input {
  flex: 1;
  min-width: 0;
  padding: 11px 2px;
  border: 0;
  border-bottom: 1px solid var(--ch-mag-ink);
  border-radius: 0;
  background: transparent;
  color: var(--ch-mag-ink);
  font: 400 14px/1.4 var(--ch-mag-sans);
}
.ch-magazin__search input:focus-visible { outline: 2px solid var(--ch-mag-ink); outline-offset: 3px; }
.ch-magazin__empty { margin: 28px 0 0; font: 400 16px/1.5 var(--ch-mag-sans); }

body.in-magazin.type-posts-listing #newsWrapper {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 62px 24px;
  max-width: 1320px;
  margin: 0 auto 85px;
  padding: 0;
}
body.in-magazin.type-posts-listing #newsWrapper .news-item {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}
body.in-magazin.type-posts-listing #newsWrapper .news-item[hidden] { display: none !important; }
body.in-magazin.type-posts-listing #newsWrapper .news-item .image {
  display: block;
  width: 100% !important;
  margin: 0 0 17px !important;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: #dfe4da;
}
body.in-magazin.type-posts-listing #newsWrapper .news-item .image a { display: block; width: 100%; height: 100%; }
body.in-magazin.type-posts-listing #newsWrapper .news-item .image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  transition: transform .4s ease;
}
body.in-magazin.type-posts-listing #newsWrapper .news-item:hover .image img { transform: scale(1.025); }
body.in-magazin.type-posts-listing #newsWrapper .news-item .text { width: auto !important; padding: 0 !important; }
body.in-magazin.type-posts-listing #newsWrapper .ch-magazin__category { margin: 0 0 10px; }
body.in-magazin.type-posts-listing #newsWrapper .news-item .title {
  display: block;
  margin: 0 0 12px;
  color: var(--ch-mag-ink);
  font: 400 clamp(26px, 2.25vw, 36px)/1.2 var(--ch-mag-serif);
  letter-spacing: -.025em;
  text-decoration: none;
  text-wrap: balance;
}
body.in-magazin.type-posts-listing #newsWrapper .news-item .title:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
body.in-magazin.type-posts-listing #newsWrapper .news-item .description {
  display: -webkit-box;
  max-height: 5em;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: var(--ch-mag-text);
  font: 400 15px/1.65 var(--ch-mag-sans);
}
body.in-magazin.type-posts-listing #newsWrapper .news-item .description * { display: inline; margin: 0; font: inherit; }
body.in-magazin.type-posts-listing #content .listingControls { max-width: 1320px; margin: 0 auto 90px; }
body.in-magazin.type-posts-listing #content .listingControls[hidden] { display: none !important; }

/* Na neskorších stranách zostáva natívne stránkovanie. */
body.in-magazin.type-posts-listing:has(.pagination-appendix) .ch-magazin__intro,
body.in-magazin.type-posts-listing:has(.pagination-appendix) .ch-magazin__lead { display: none; }
body.in-magazin.type-posts-listing:has(.pagination-appendix) .ch-magazin__archive-head { margin-top: 35px; }

/* Detail článku: typografická úprava bez zásahu do jeho pôvodného obsahu. */
body.in-magazin.type-post .news-item-detail { max-width: 900px; margin: 50px auto 110px; }
body.in-magazin.type-post .news-item-detail > h1 {
  margin: 0 0 42px;
  color: var(--ch-mag-ink);
  font: 400 clamp(42px, 5.6vw, 78px)/1.12 var(--ch-mag-serif);
  letter-spacing: -.045em;
  text-wrap: balance;
}
body.in-magazin.type-post .news-item-detail .text { font: 400 17px/1.78 var(--ch-mag-sans); }
body.in-magazin.type-post .news-item-detail .text > * { max-width: 70ch; }
body.in-magazin.type-post .news-item-detail .text h1,
body.in-magazin.type-post .news-item-detail .text h2,
body.in-magazin.type-post .news-item-detail .text h3 {
  margin: 1.8em 0 .55em;
  color: var(--ch-mag-ink);
  font-family: var(--ch-mag-serif);
  font-weight: 400;
  line-height: 1.25;
}
body.in-magazin.type-post .news-item-detail .text h1 { font-size: clamp(30px, 3vw, 45px); }
body.in-magazin.type-post .news-item-detail .text h2 { font-size: clamp(28px, 2.7vw, 40px); }
body.in-magazin.type-post .news-item-detail .text h3 { font-size: clamp(25px, 2.3vw, 34px); }
body.in-magazin.type-post .news-item-detail .text p { margin: 0 0 1.25em; }
body.in-magazin.type-post .news-item-detail .text img { display: block; max-width: 100%; height: auto; margin: 35px 0 12px; }
body.in-magazin.type-post .news-item-detail .text a { color: var(--ch-mag-ink); text-underline-offset: 3px; }

@media (max-width: 900px) {
  .ch-magazin__lead { grid-template-columns: 1.35fr 1fr; gap: 30px; }
  .ch-magazin__lead-image img { min-height: 390px; }
  .ch-magazin__lead-copy h3 { font-size: 43px; }
  body.in-magazin.type-posts-listing #newsWrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  body.in-magazin.type-posts-listing .content-wrapper-in,
  body.in-magazin.type-post .content-wrapper-in { width: 100%; }
  body.in-magazin.type-posts-listing #content .sectionDescription > h1 { margin: 22px 20px 0; font-size: 10px; }
  .ch-magazin__intro { margin: 18px 20px 28px; text-align: left; }
  .ch-magazin__intro h2 { max-width: 9ch; margin-bottom: 17px; font-size: clamp(47px, 12vw, 70px); line-height: 1.04; }
  .ch-magazin__intro > p:last-child { max-width: 27ch; font: 400 16px/1.5 var(--ch-mag-sans); }
  .ch-magazin__lead { display: block; margin-bottom: 68px; }
  .ch-magazin__lead-image img { width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 3; object-fit: cover; }
  .ch-magazin__lead-copy { max-width: none; padding: 27px 20px 0; }
  .ch-magazin__lead-copy .ch-magazin__kicker { margin-bottom: 15px; }
  .ch-magazin__lead-copy h3 { max-width: 12ch; margin-bottom: 18px; font-size: clamp(39px, 10vw, 55px); }
  .ch-magazin__lead-copy > p:not(.ch-magazin__kicker) { margin-bottom: 22px; font-size: 15px; }
  .ch-magazin__archive-head { margin: 0 20px; padding: 28px 0 26px; }
  .ch-magazin__archive-head h2 { margin-bottom: 25px; font-size: 47px; }
  .ch-magazin__filters { margin-right: -20px; padding-right: 20px; gap: 27px; }
  .ch-magazin__filters button { min-height: 44px; font-size: 14px; }
  .ch-magazin__search { display: block; margin-top: 25px; }
  .ch-magazin__search span { display: block; margin-bottom: 2px; }
  .ch-magazin__search input { width: 100%; }
  body.in-magazin.type-posts-listing #newsWrapper {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 47px;
    margin: 0 20px 65px;
  }
  body.in-magazin.type-posts-listing #newsWrapper .news-item .image { margin-bottom: 14px !important; }
  body.in-magazin.type-posts-listing #newsWrapper .news-item .title { font-size: 32px; }
  body.in-magazin.type-posts-listing #newsWrapper .news-item .description { font-size: 14px; }
  body.in-magazin.type-posts-listing #content .listingControls { margin: 0 20px 70px; }
  body.in-magazin.type-post .news-item-detail { margin: 30px 20px 75px; }
  body.in-magazin.type-post .news-item-detail > h1 { margin-bottom: 30px; font-size: 43px; }
  body.in-magazin.type-post .news-item-detail .text { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .ch-magazin__lead-image img,
  body.in-magazin.type-posts-listing #newsWrapper .news-item .image img { transition: none; }
}
