/* Quiet privacy links within the existing dark footer. */
.footer-privacy { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: .4rem .75rem; margin: -.25rem auto 0; font: 400 14px/1.5 Roboto, sans-serif; color: #d3d9cc; }
.footer-privacy a, .footer-privacy button { color: #e0e5dc; text-decoration: none; }
.footer-privacy button { appearance: none; border: 0; background: transparent; padding: .25rem 0; font: inherit; cursor: pointer; }
.footer-privacy a:hover, .footer-privacy button:hover { color: #fff; text-decoration: underline; text-underline-offset: .2em; }
.footer-privacy a:focus-visible, .footer-privacy button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
/* Reviews have very different lengths; keep the carousel usable on phones. */
#reviews-en .uk-slider-items { align-items: flex-start; transition: height .2s ease; }
#reviews-en .uk-slider-items > li { max-height: 512px; overflow-y: auto; }
#reviews-en .uk-slider-items > li:focus-visible { outline: 2px solid #42652c; outline-offset: -3px; }
/* Preserve the original fonts while improving the narrow-phone layout. */
@media (max-width: 400px) {
  #tm-main h1.uvodnik { font-size: 42px !important; line-height: 1.15; }
  #tm-main h2.uvodnik { font-size: 23px !important; line-height: 1.4; }
  #pindamast .uk-panel.uk-text-large { font-size: 19px; line-height: 1.6; }
  .pinda-consent { left: 1rem; right: 1rem; max-width: none; max-height: calc(100vh - 2rem); overflow-y: auto; box-sizing: border-box; }
}

/* Czech reviews: keep the original palette and typography with compact cards. */
#reviews-cs .uk-slider-items { align-items: flex-start; transition: height .2s ease; }
#reviews-cs .uk-slider-items > div { align-self: flex-start; }
#reviews-cs .uk-card { padding: 32px 30px; border-radius: 6px; box-shadow: 0 5px 22px rgba(36, 52, 33, .06); }
#reviews-cs .el-meta { margin-top: 12px; }
#reviews-cs .el-content { margin-top: 18px; }
#reviews-cs blockquote { margin: 0; }
#reviews-cs blockquote p { margin: 0; }
#reviews-cs .review-clamped { display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
#reviews-cs .review-expand { background: transparent; border: 0; padding: .5rem 0; margin-top: .4rem; color: #345a31; font: inherit; font-size: 15px; cursor: pointer; text-decoration: underline; text-underline-offset: .2em; }
#reviews-cs .review-expand:focus-visible, #reviews-cs .el-slidenav:focus-visible { outline: 2px solid #345a31; outline-offset: 4px; }
@media (max-width: 639px) {
  #reviews-cs .uk-card { padding: 26px 24px; }
  #reviews-cs .uk-slider-nav { display: none; }
  #reviews-cs .pinda-review-arrow { display: block; z-index: 2; margin: 0; }
  #reviews-cs .pinda-review-arrow:first-of-type { left: 0; }
  #reviews-cs .pinda-review-arrow:last-of-type { right: 0; }
  #reviews-cs .el-content { padding: 0 12px; }
}

#reviews-cs .uk-slider-nav { display: none; }
#reviews-cs .pinda-review-arrow { position: static !important; transform: none !important; display: inline-flex; margin: 20px 5px 0; vertical-align: middle; }
#reviews-cs .el-slidenav { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1px solid #aebcaf; border-radius: 50%; color: #345a31; background: rgba(255,255,255,.7); }
#reviews-cs .el-slidenav:hover { color: #fff; background: #345a31; border-color: #345a31; }
#reviews-en .uk-slider-items > li { max-height: none; overflow: visible; align-self: flex-start; }
#reviews-en .uk-card { padding: 32px 30px; border-radius: 6px; box-shadow: 0 5px 22px rgba(36,52,33,.06); }
#reviews-en blockquote { margin: 18px 0 0; }
#reviews-en .review-clamped { display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
#reviews-en .review-expand { background:transparent; border:0; padding:.5rem 0; margin-top:.4rem; color:#345a31; font:inherit; font-size:15px; cursor:pointer; text-decoration:underline; text-underline-offset:.2em; }
#reviews-en .review-expand:focus-visible { outline:2px solid #345a31; outline-offset:4px; }
#reviews-en .uk-slider-nav { display:none; }
#reviews-en [uk-slidenav-previous], #reviews-en [uk-slidenav-next] { position:static !important; transform:none !important; display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; margin:20px 5px 0; border:1px solid #aebcaf; border-radius:50%; color:#345a31; background:rgba(255,255,255,.7); }
#reviews-en [uk-slidenav-previous]:hover, #reviews-en [uk-slidenav-next]:hover { color:#fff; background:#345a31; border-color:#345a31; }
@media (max-width:639px) { #reviews-en .uk-card { padding:26px 24px; } }
#reviews-en .uk-position-relative, #reviews-en .uk-card { text-align:center; }
#reviews-en .uk-card > p:first-of-type { color:#d8aa23; }

/* Article and expert quotes, using the existing palette and typefaces. */
#clanky .uk-container-xlarge { max-width: 1360px; }

#clanky .uk-width-2-3\@m > .uk-panel.uk-margin { max-width: 68ch; font-size: 18px; line-height: 1.75; }
#clanky .uk-panel.uk-margin h3 { margin-top: 1.8em; }
#clanky picture img { border-radius: 8px; }
.article-expand { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; margin-top:12px; color:#294a2c; border:1px solid #294a2c; border-radius:4px; background:transparent; font:inherit; font-size:15px; cursor:pointer; }
.article-expand:hover { color:#fff; background:#294a2c; }
.article-expand:focus-visible { outline:2px solid #294a2c; outline-offset:4px; }
#article-more[hidden] { display:none; }
#article-more .uk-accordion-default { margin-top:28px; }
#page\#2 .uk-grid-divider > div::before, #experts-en .uk-grid-divider > div::before { display:none; }
#page\#2 .uk-grid-divider > div > .el-item, #experts-en .uk-grid-divider > div > .el-item { box-sizing:border-box; height:100%; padding:26px; border:1px solid rgba(44,72,42,.13); border-radius:6px; background:rgba(255,255,255,.83); box-shadow:0 5px 24px rgba(30,49,28,.06); }
#page\#2 .el-item h3, #experts-en .el-item h3 { color:#294a2c; margin-top:0; }
#page\#2 .el-item p, #experts-en .el-item p { line-height:1.65; }
#page\#2 .el-item strong, #experts-en .el-item strong { font-size:.86em; }
#experts-en summary { color:#294a2c; cursor:pointer; }
@media (max-width:639px) {
  #clanky .uk-width-2-3\@m > .uk-panel.uk-margin { font-size:16px; line-height:1.7; }
  #clanky .uk-container-xlarge { padding-left:22px; padding-right:22px; }
  #page\#2 .uk-grid-divider > div > .el-item, #experts-en .uk-grid-divider > div > .el-item { padding:22px; }
}

.expert-clamped { display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }
.expert-expand { background:transparent; border:0; padding:.35rem 0; color:#345a31; font:inherit; font-size:15px; cursor:pointer; text-decoration:underline; text-underline-offset:.2em; }
.expert-expand:focus-visible { outline:2px solid #345a31; outline-offset:4px; }

/* An editorial article panel, using the site's original palette and imagery. */
#clanky .article-layout { overflow:hidden; margin-left:0; border-radius:8px; background:rgba(255,255,255,.83); box-shadow:0 8px 32px rgba(38,48,36,.07); }
#clanky .article-layout > div { padding-left:0; }
#clanky .article-layout > div:first-child { box-sizing:border-box; padding:clamp(24px,4vw,56px); }
#clanky .article-layout > div:first-child::before { content:'Rady a informace'; display:block; margin-bottom:14px; font:600 12px/1.4 Roboto,sans-serif; letter-spacing:.14em; text-transform:uppercase; color:#526a4f; }
html[lang^="en"] #clanky .article-layout > div:first-child::before { content:'Advice and information'; }
#clanky .article-layout h1, #clanky .article-layout h2, #clanky .article-layout h3 { margin-top:0; }
#clanky .article-layout h2 { margin-top:22px; }
#clanky .article-layout .uk-panel.uk-margin { margin-top:24px; }
#clanky .article-layout > div:last-child .uk-margin { margin:0; }
#clanky .article-layout > div:last-child img { display:block; margin:auto; border-radius:0; max-height:600px; object-fit:contain; object-position:center bottom; }
#clanky .article-intro-compact { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
@media (max-width:959px) {
  #clanky .article-layout > div:first-child { padding:26px 24px 20px; }
  #clanky .article-layout > div:last-child img { max-height:360px; }
}

/* Mobile spacing and readable controls. */
@media (max-width:959px) {
  #page\#0 > .uk-section { min-height:0 !important; padding-top:20px; padding-bottom:24px; }
  #page\#0 .uk-grid-margin-large { margin-top:0; }
  #pindamast.uk-section { padding-top:30px; }
  #page\#0 + section.uk-section { padding-top:30px; }
}
#reviews-cs + .uk-margin a { display:inline-flex; flex-wrap:nowrap; gap:8px; max-width:100%; height:auto; min-height:52px; padding:10px 20px; line-height:1.4; white-space:normal; box-sizing:border-box; }
#reviews-cs + .uk-margin a span { flex:none; margin:0 !important; }
@media (max-width:639px) {
  #reviews-cs .pinda-review-arrow { position:absolute !important; top:50%; margin:0; transform:translateY(-50%) !important; }
  #reviews-cs .pinda-review-arrow:first-of-type { left:-12px; right:auto; }
  #reviews-cs .pinda-review-arrow:last-of-type { right:-12px; left:auto; }
  #reviews-cs .uk-slider-items { padding:0 18px; }
  #reviews-en [uk-slidenav-previous], #reviews-en [uk-slidenav-next] { position:absolute !important; top:50%; margin:0; transform:translateY(-50%) !important; z-index:2; }
  #reviews-en [uk-slidenav-previous] { left:0; }
  #reviews-en [uk-slidenav-next] { right:0; }
}
/* Portrait floats beside the article; the full text may continue underneath. */
#clanky.article-has-portrait .article-layout { display:block; }
#clanky.article-has-portrait .article-layout > div:first-child { width:100%; display:flow-root; }
#clanky.article-has-portrait .article-layout > div:last-child { display:none; }
#clanky.article-has-portrait .article-portrait { float:right; width:36%; max-width:390px; margin:0 0 24px 34px; }
#clanky.article-has-portrait .article-portrait img { display:block; width:100%; height:auto; border-radius:0; }
#clanky.article-has-portrait .uk-width-2-3\@m > .uk-panel.uk-margin { max-width:none; }
@media (max-width:639px) {
  #clanky.article-has-portrait .article-layout > div:first-child { display:flex; flex-direction:column; }
  #clanky.article-has-portrait .article-portrait { float:none; order:5; width:min(75%, 280px); margin:24px auto 0; }
  #clanky.article-has-portrait .article-layout .uk-panel.uk-margin { order:4; }
}
@media (max-width:639px) {
  #reviews-cs .el-slidenav, #reviews-en [uk-slidenav-previous], #reviews-en [uk-slidenav-next] { box-sizing:border-box; width:44px; height:44px; padding:0; }
  #reviews-cs .pinda-review-arrow:has([uk-slidenav-previous]) { left:0; right:auto; }
  #reviews-cs .pinda-review-arrow:has([uk-slidenav-next]) { right:0; left:auto; }
  #reviews-cs .uk-card { padding-left:38px; padding-right:38px; }
}
#clanky.article-has-portrait .article-portrait img { object-fit:contain; }

@media (min-width:960px) { #clanky .article-intro-compact { display:block; overflow:visible; } }
@media (max-width:959px) { #clanky .article-preview-extra { display:none; } #clanky .article-expanded .article-preview-extra { display:block; } }
/* Keep review controls circular at every viewport size. */
#reviews-cs .el-slidenav, #reviews-en [uk-slidenav-previous], #reviews-en [uk-slidenav-next] { box-sizing:border-box; width:44px; height:44px; padding:0; }

/* Let the expanded article continue below the portrait across the whole panel. */
#clanky #article-more { clear:both; width:100%; padding-top:1px; line-height:1.75; }
@media (max-width:639px) { #clanky #article-more { order:6; font-size:16px; line-height:1.7; } }
/* An understated reading layout for the full article. */
#clanky #article-more { border-top:0; margin-top:32px; padding-top:12px; color:#4e4543; font-size:18px; line-height:1.8; }
#clanky #article-more h3, #clanky .article-preview-extra h3 { color:#433534; font-weight:400; font-size:clamp(24px,2vw,30px); line-height:1.25; margin:1.65em 0 .55em; }
#clanky #article-more p { margin:0 0 1.2em; }
#clanky #article-more strong { color:#3e3834; }
@media (max-width:639px) { #clanky #article-more { font-size:16px; line-height:1.7; margin-top:24px; } #clanky #article-more h3, #clanky .article-preview-extra h3 { font-size:24px; } }

/* A calmer opening that keeps the site's existing colours and typefaces. */
#clanky.article-has-portrait .article-layout h1 { line-height:1.05; margin-bottom:18px; }
#clanky.article-has-portrait .article-layout h2 { color:#574947; line-height:1.2; margin-top:22px; }
#clanky.article-has-portrait .article-layout .uk-panel.uk-margin > p:first-child { color:#524846; font-size:1.05em; line-height:1.8; }
#clanky .article-preview-extra { background:rgba(232,237,227,.46); border-radius:8px; padding:22px 26px; margin:28px 0 18px; }
#clanky .article-preview-extra h3 { margin:0 0 .55em; }
#clanky .article-preview-extra p { margin:0; line-height:1.75; }
#clanky .article-expand { border-radius:4px; font-weight:500; }
@media (max-width:639px) { #clanky .article-preview-extra { padding:20px; margin:22px 0 14px; } #clanky.article-has-portrait .article-layout .uk-panel.uk-margin > p:first-child { font-size:1em; line-height:1.7; } }
/* Desktop opening: image and text share the same lower edge. */
@media (min-width:960px) {
  #clanky.article-has-portrait .article-layout > div:first-child { display:grid; grid-template-columns:minmax(0, 1fr) minmax(260px, 36%); column-gap:clamp(28px, 4vw, 56px); align-items:start; }
  #clanky.article-has-portrait .article-layout > div:first-child::before,
  #clanky.article-has-portrait .article-layout > div:first-child > h1,
  #clanky.article-has-portrait .article-layout > div:first-child > h2,
  #clanky.article-has-portrait .article-layout > div:first-child > .uk-divider-small,
  #clanky.article-has-portrait .article-layout > div:first-child > .uk-panel.uk-margin { grid-column:1; }
  #clanky.article-has-portrait .article-portrait { grid-column:2; grid-row:1 / 6; align-self:end; float:none; width:100%; max-width:390px; margin:0 auto; }
  #clanky.article-has-portrait #article-more { grid-column:1 / -1; grid-row:6; }
}
@media (min-width:960px) {
  #clanky.article-has-portrait .article-portrait { align-self:stretch; display:flex; align-items:flex-end; justify-content:center; max-width:none; overflow:hidden; border-radius:8px; background:rgba(232,237,227,.46); }
  #clanky.article-has-portrait .article-portrait img { width:min(100%, 390px); }
  #clanky .uk-panel:not(.article-expanded) .article-preview-extra p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:7; overflow:hidden; }
}
/* Article opening: a compact text column and a naturally blended portrait. */
@media (min-width:960px) {
  #clanky.article-has-portrait .article-portrait { background:transparent; border-radius:0; align-self:center; overflow:visible; }
  #clanky.article-has-portrait .article-portrait img { -webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%); mask-image:linear-gradient(to bottom,#000 88%,transparent 100%); }
  #clanky .uk-panel:not(.article-expanded) .article-preview-extra p { -webkit-line-clamp:5; }
}
#clanky .article-preview-extra { background:transparent; padding:0; border-radius:0; margin:24px 0 18px; }
#clanky .article-preview-extra h3 { margin:0 0 .45em; }
@media (max-width:639px) { #clanky .article-preview-extra { padding:0; } #clanky.article-has-portrait .article-portrait img { -webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%); mask-image:linear-gradient(to bottom,#000 88%,transparent 100%); } }
/* Compact spacing in the Czech article opening. */
#clanky.article-has-portrait .article-layout > div:first-child { padding-bottom:clamp(20px,2vw,28px); }
#clanky.article-has-portrait .article-layout h1 { margin-bottom:6px; }
#clanky.article-has-portrait .article-layout .uk-divider-small { margin-top:0; margin-bottom:4px; }
#clanky.article-has-portrait .article-layout h2 { margin-top:8px; margin-bottom:0; }
#clanky.article-has-portrait .article-layout .uk-panel.uk-margin { margin-top:12px; }
#clanky .article-preview-extra { margin-top:12px; margin-bottom:12px; }
#clanky .article-preview-extra h3 { margin-top:0; }
#clanky .article-expand { margin-top:4px; }
@media (max-width:639px) { #clanky.article-has-portrait .article-layout > div:first-child { padding-bottom:20px; } }
#clanky .uk-panel.uk-margin .article-preview-extra h3 { margin-top:0; }
/* Reduce the gap before the first expanded section. */
#clanky #article-more { margin-top:12px; padding-top:0; }
#clanky #article-more > h3:first-child { margin-top:0; }
@media (max-width:639px) { #clanky #article-more { margin-top:12px; } }
