:root {
    --red: #9d0b16;
    --red-dark: #700710;
    --ink: #151515;
    --muted: #676767;
    --line: #dedbd6;
    --paper: #fff;
    --soft: #f4f2ee;
    --shell: 1240px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Arial, Helvetica, sans-serif; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--red); }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
.site-shell { width: min(calc(100% - 32px), var(--shell)); margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; left: 12px; top: -60px; padding: 10px 14px; background: #fff; border: 2px solid var(--red); }
.skip-link:focus { top: 12px; }
.utility-bar { background: var(--ink); color: #fff; font-size: 12px; }
.utility-bar__inner { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.utility-links { display: flex; align-items: center; gap: 11px; }
.utility-links a { color: #ddd; }
.language-link { display: inline-flex; align-items: center; gap: 5px; padding: 3px 5px; border-radius: 2px; }
.language-link img { width: auto; height: 15px; border-radius: 1px; box-shadow: 0 0 0 1px rgba(255,255,255,.28); }
.language-link span { font-size: 11px; font-weight: 800; letter-spacing: .035em; }
.language-link.is-active { color: #fff; background: rgba(255,255,255,.14); }
.utility-links a:hover, .utility-links a.is-active { color: #fff; font-weight: 700; }
.utility-links .utility-admin-link { padding: 5px 10px; color: #fff; background: var(--red); border-radius: 2px; font-weight: 800; text-transform: uppercase; letter-spacing: .035em; }
.utility-links .utility-admin-link:hover { color: #fff; background: #bd1220; }
.admin-toolbar { color: #fff; background: var(--red); border-bottom: 1px solid var(--red-dark); font-size: 12px; }
.admin-toolbar__inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.admin-toolbar__links { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.admin-toolbar__links a { padding: 7px 10px; color: #fff; font-weight: 800; }
.admin-toolbar__links a:hover { color: #fff; background: rgba(0,0,0,.18); }
.masthead { min-height: 138px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; }
.brand { text-align: center; line-height: .92; text-transform: uppercase; letter-spacing: .015em; }
.brand__name { display: block; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(31px, 4.2vw, 56px); font-weight: 400; }
.brand strong { display: block; color: var(--red); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(31px, 4.2vw, 56px); }
.brand small { display: block; margin-top: 13px; font-size: 10px; font-weight: 700; letter-spacing: .16em; color: var(--muted); }
.header-search { grid-column: 3; justify-self: end; display: flex; width: min(310px, 100%); border-bottom: 1px solid #999; }
.header-search input { min-width: 0; width: 100%; padding: 9px 4px; border: 0; outline: 0; background: transparent; }
.header-search button { width: 40px; border: 0; background: transparent; font-size: 24px; cursor: pointer; }
.mobile-menu-button { display: none; background: none; border: 0; padding: 10px; }
.mobile-menu-button > span:not(.screen-reader-text) { display: block; width: 27px; height: 2px; margin: 5px 0; background: #111; }
.main-navigation { border-top: 1px solid var(--line); border-bottom: 4px solid var(--red); background: #fff; }
.main-navigation__inner { display: flex; align-items: stretch; overflow-x: auto; scrollbar-width: thin; }
.main-navigation a { flex: 0 0 auto; padding: 13px 14px 11px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .025em; }
.main-navigation a:hover { color: #fff; background: var(--red); }
.nav-home { font-size: 18px !important; padding-inline: 17px !important; }
.section-space { padding-block: 38px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; padding-bottom: 10px; border-bottom: 3px solid var(--ink); }
.section-heading h2 { margin: 0; font: 700 clamp(24px, 3vw, 33px)/1.05 Georgia, 'Times New Roman', serif; }
.section-heading > span, .section-heading > a { color: var(--muted); font-size: 13px; font-weight: 700; }
.section-heading--compact { margin-bottom: 12px; }
.lead-layout { display: grid; grid-template-columns: minmax(0, 2.1fr) minmax(285px, .9fr); gap: 34px; border-bottom: 1px solid var(--line); }
.lead-story { position: relative; min-height: 560px; overflow: hidden; background: #111; }
.lead-story__image, .lead-story__img, .lead-story__image .story-image-placeholder { width: 100%; height: 100%; min-height: 560px; }
.lead-story__img { object-fit: cover; opacity: .84; }
.lead-story__content { position: absolute; inset: auto 0 0; padding: 80px 40px 35px; color: #fff; background: linear-gradient(transparent, rgba(0,0,0,.92)); }
.lead-story__content h1 { max-width: 880px; margin: 8px 0 11px; font: 700 clamp(33px, 4vw, 55px)/1.04 Georgia, 'Times New Roman', serif; }
.lead-story__content a:hover { color: #fff; text-decoration: underline; }
.lead-story__content p { max-width: 760px; margin: 0 0 12px; color: #eee; font-size: 17px; }
.eyebrow { display: inline-block; color: var(--red); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .09em; }
.lead-story .eyebrow { color: #fff; background: var(--red); padding: 5px 8px; }
.story-meta { display: flex; flex-wrap: wrap; gap: 9px 18px; color: var(--muted); font-size: 12px; }
.lead-story .story-meta { color: #ddd; }
.top-stories { min-width: 0; }
.story-card { min-width: 0; }
.story-card__image { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: var(--soft); }
.story-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.story-card:hover .story-card__img { transform: scale(1.025); }
.story-card__body { padding-top: 13px; }
.story-card__title { margin: 5px 0 8px; font: 700 23px/1.13 Georgia, 'Times New Roman', serif; }
.story-card__excerpt { margin: 0 0 11px; color: #505050; font-size: 14px; }
.story-card--mini { display: grid; grid-template-columns: 112px 1fr; gap: 13px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.story-card--mini .story-card__image { aspect-ratio: 1.25; }
.story-card--mini .story-card__body { padding: 0; }
.story-card--mini .story-card__title { margin: 3px 0 7px; font-size: 17px; }
.story-card--mini .eyebrow { font-size: 10px; }
.story-card--mini .story-meta { font-size: 10px; }
.story-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; }
.story-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.story-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.content-with-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 38px; }
.sidebar-block { padding: 22px; border-top: 5px solid var(--red); background: var(--soft); }
.sidebar-block h2 { margin: 0 0 14px; font: 700 23px/1.1 Georgia, 'Times New Roman', serif; }
.sidebar-block--sticky { position: sticky; top: 20px; }
.ranking-list { margin: 0; padding: 0; list-style: none; }
.ranking-list li { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 14px 0; border-bottom: 1px solid #d5d1ca; }
.ranking-list li > span { color: var(--red); font: 700 31px/1 Georgia, serif; }
.ranking-list a { font: 700 16px/1.2 Georgia, serif; }
.ranking-list small { display: block; margin-top: 5px; color: var(--muted); }
.sidebar-block--ranking { padding: 15px 16px; }
.sidebar-block--ranking h2 { margin-bottom: 8px; font-size: 18px; line-height: 1.05; }
.sidebar-block--ranking .ranking-list li { grid-template-columns: 25px 1fr; gap: 8px; padding: 8px 0; }
.sidebar-block--ranking .ranking-list li > span { font-size: 21px; line-height: 1; }
.sidebar-block--ranking .ranking-list a { font-size: 13px; line-height: 1.22; }
.sidebar-block--ranking .ranking-list small { margin-top: 2px; font-size: 10px; line-height: 1.15; }
.category-strip { border-top: 1px solid var(--line); }
.category-strip__grid { display: grid; grid-template-columns: 1.35fr repeat(3, 1fr); gap: 22px; }
.story-card--wide .story-card__title { font-size: 28px; }
.story-card--compact .story-card__title { font-size: 19px; }
.gallery-teasers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 23px; }
.gallery-teaser__image { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; background: #eee; }
.gallery-teaser__image img { width: 100%; height: 100%; object-fit: cover; }
.gallery-teaser__image span, .gallery-archive-card__image span { position: absolute; right: 10px; bottom: 10px; padding: 6px 9px; color: #fff; background: rgba(0,0,0,.78); font-size: 12px; font-weight: 700; }
.gallery-teaser h3 { margin: 10px 0 0; font: 700 21px/1.15 Georgia, serif; }
.story-image-placeholder { display: grid; place-items: center; color: #aaa; background: linear-gradient(135deg, #ece9e3, #d8d3cb); }
.story-image-placeholder span { font: 700 46px/1 Georgia, serif; opacity: .35; }
.archive-header { margin-bottom: 32px; padding-bottom: 22px; border-bottom: 4px solid var(--red); }
.archive-header > span { color: var(--red); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .12em; }
.archive-header h1 { margin: 7px 0 8px; font: 700 clamp(40px, 6vw, 68px)/1 Georgia, serif; }
.archive-header p { margin: 0; color: var(--muted); }
.article-layout { display: grid; grid-template-columns: minmax(0, 840px) minmax(270px, 1fr); gap: 50px; align-items: start; }
.article-header { margin-bottom: 26px; }
.article-header h1 { margin: 8px 0 16px; font: 700 clamp(41px, 5.5vw, 70px)/1.02 Georgia, 'Times New Roman', serif; letter-spacing: -.025em; }
.article-lead { margin: 0 0 17px; color: #434343; font: 400 21px/1.45 Georgia, serif; }
.article-byline { display: flex; flex-wrap: wrap; gap: 7px 22px; padding-top: 13px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.article-hero-image { margin: 0 0 28px; }
.article-hero-image img { width: 100%; max-height: 700px; object-fit: cover; }
.article-content { font: 400 18px/1.75 Georgia, 'Times New Roman', serif; }
.article-content > :first-child { margin-top: 0; }
.article-content h2 { margin: 1.5em 0 .55em; font-size: 32px; line-height: 1.15; }
.article-content h3 { margin: 1.4em 0 .5em; font-size: 25px; line-height: 1.2; }
.article-content p { margin: 0 0 1.15em; }
.article-content img { height: auto; margin-inline: auto; }
.article-content blockquote { margin: 1.5em 0; padding: 8px 0 8px 24px; border-left: 5px solid var(--red); font-size: 22px; font-style: italic; }
.article-content table { width: 100%; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; }
.article-content th, .article-content td { padding: 9px; border: 1px solid var(--line); }
.article-content iframe { max-width: 100%; }
.article-footer { margin-top: 35px; padding-top: 18px; border-top: 1px solid var(--line); }
.share-block { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.share-block a, .share-block button { padding: 7px 10px; border: 1px solid #aaa; background: #fff; cursor: pointer; }
.article-gallery-section, .embedded-gallery { margin-block: 36px; }
.article-gallery-section h2, .embedded-gallery h2 { font: 700 30px/1.1 Georgia, serif; }
.article-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 24px 0; }
.gallery-tile { margin: 0; min-width: 0; }
.gallery-tile__button { display: block; width: 100%; padding: 0; border: 0; cursor: zoom-in; background: #eee; }
.gallery-tile img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.gallery-tile figcaption { padding: 7px 2px; color: var(--muted); font: 12px/1.35 Arial, sans-serif; }
.gallery-page-header { max-width: 900px; margin: 0 auto 34px; text-align: center; }
.gallery-page-header h1 { margin: 8px 0 13px; font: 700 clamp(39px, 5.5vw, 65px)/1.04 Georgia, serif; }
.gallery-page-header p { margin: 0 auto 13px; max-width: 760px; color: var(--muted); font: 18px/1.5 Georgia, serif; }
.gallery-page-header .story-meta { justify-content: center; }
.article-gallery--archive { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gallery-archive-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.gallery-archive-card { border-bottom: 1px solid var(--line); }
.gallery-archive-card__image { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #eee; }
.gallery-archive-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.gallery-archive-card:hover img { transform: scale(1.025); }
.gallery-archive-card__body { padding: 13px 0 18px; }
.gallery-archive-card h2 { margin: 0 0 7px; font: 700 24px/1.15 Georgia, serif; }
.gallery-archive-card p { margin: 0 0 8px; color: var(--muted); }
.gallery-archive-card time { color: var(--muted); font-size: 12px; }
.search-page-form { display: flex; gap: 10px; max-width: 760px; margin-bottom: 35px; }
.search-page-form input { flex: 1; min-width: 0; padding: 13px 15px; border: 1px solid #999; }
.button { display: inline-flex; align-items: center; justify-content: center; padding: 11px 17px; border: 0; cursor: pointer; font-weight: 800; }
.button--primary { color: #fff; background: var(--red); }
.button--primary:hover { color: #fff; background: var(--red-dark); }
.pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; margin-top: 40px; }
.pagination a { min-width: 39px; padding: 9px 11px; text-align: center; border: 1px solid var(--line); font-weight: 700; }
.pagination a.is-current, .pagination a:hover { color: #fff; background: var(--red); border-color: var(--red); }
.empty-state { max-width: 800px; margin: 60px auto; padding: 60px 35px; text-align: center; background: var(--soft); border-top: 7px solid var(--red); }
.empty-state--small { margin-block: 25px; padding-block: 40px; }
.empty-state__mark { display: block; color: var(--red); font: 700 64px/1 Georgia, serif; opacity: .25; }
.empty-state h1, .empty-state h2 { margin: 10px 0 12px; font: 700 38px/1.1 Georgia, serif; }
.site-footer { margin-top: 45px; padding: 45px 0 20px; color: #d8d8d8; background: #171717; border-top: 7px solid var(--red); }
.footer-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 50px; }
.footer-brand { color: #fff; font: 400 28px/1 Georgia, serif; }
.footer-brand strong { color: #ef5260; }
.site-footer h2 { margin: 0 0 12px; color: #fff; font: 700 17px/1.2 Georgia, serif; }
.site-footer p { max-width: 420px; color: #aaa; }
.footer-links { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px 18px; }
.footer-links a { color: #bbb; font-size: 13px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 35px; padding-top: 17px; border-top: 1px solid #383838; color: #777; font-size: 11px; }
.lightbox[hidden] { display: none; }
.lightbox { position: fixed; z-index: 999; inset: 0; display: grid; place-items: center; padding: 50px 80px; background: rgba(0,0,0,.94); }
.lightbox figure { margin: 0; max-width: 1200px; max-height: 90vh; }
.lightbox img { max-width: 100%; max-height: 82vh; object-fit: contain; }
.lightbox figcaption { margin-top: 10px; color: #ddd; text-align: center; }
.lightbox__close, .lightbox__previous, .lightbox__next { position: fixed; border: 0; color: #fff; background: transparent; cursor: pointer; }
.lightbox__close { right: 24px; top: 15px; font-size: 46px; }
.lightbox__previous, .lightbox__next { top: 50%; transform: translateY(-50%); font-size: 72px; }
.lightbox__previous { left: 20px; }
.lightbox__next { right: 20px; }
.lightbox-open { overflow: hidden; }
@media (max-width: 1020px) {
    .masthead { grid-template-columns: auto 1fr auto; min-height: 105px; }
    .mobile-menu-button { display: block; }
    .brand { grid-column: 2; }
    .brand small { display: none; }
    .header-search { grid-column: 3; width: 44px; border: 0; }
    .header-search input { display: none; }
    .main-navigation { display: none; }
    .main-navigation.is-open { display: block; }
    .main-navigation__inner { display: grid; grid-template-columns: repeat(3, 1fr); overflow: visible; }
    .main-navigation a { border-bottom: 1px solid var(--line); }
    .lead-layout, .content-with-sidebar, .article-layout { grid-template-columns: 1fr; }
    .top-stories { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 20px; }
    .top-stories .section-heading { grid-column: 1 / -1; }
    .sidebar-block--sticky { position: static; }
    .category-strip__grid { grid-template-columns: repeat(2, 1fr); }
    .story-grid--four, .article-gallery--archive { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
    .site-shell { width: min(calc(100% - 22px), var(--shell)); }
    .utility-bar__inner > span { display: none; }
    .utility-bar__inner { justify-content: flex-end; }
    .admin-toolbar__inner { align-items: flex-start; flex-direction: column; gap: 2px; padding-block: 7px; }
    .admin-toolbar__links { margin-left: -10px; }
    .masthead { gap: 7px; }
    .brand__name, .brand strong { font-size: 30px; }
    .lead-story, .lead-story__image, .lead-story__img, .lead-story__image .story-image-placeholder { min-height: 470px; }
    .lead-story__content { padding: 80px 20px 23px; }
    .lead-story__content h1 { font-size: 36px; }
    .lead-story__content p { font-size: 15px; }
    .top-stories, .story-grid, .story-grid--three, .story-grid--four, .category-strip__grid, .gallery-teasers, .gallery-archive-grid, .footer-grid { grid-template-columns: 1fr; }
    .content-with-sidebar { gap: 28px; }
    .story-card--mini { grid-template-columns: 95px 1fr; }
    .article-header h1 { font-size: 42px; }
    .article-lead { font-size: 18px; }
    .article-content { font-size: 17px; }
    .article-gallery, .article-gallery--archive { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .main-navigation__inner { grid-template-columns: repeat(2, 1fr); }
    .section-heading { align-items: start; flex-direction: column; gap: 7px; }
    .search-page-form { flex-direction: column; }
    .footer-links { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; }
    .lightbox { padding: 45px 10px; }
    .lightbox__previous, .lightbox__next { font-size: 52px; }
    .lightbox__previous { left: 2px; }
    .lightbox__next { right: 2px; }
}

/* Zaprzyjaźnione strony */
.friendly-links-section { padding: 28px; background: var(--soft); border-top: 4px solid var(--red); }
.friendly-links-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.friendly-link-card { display: grid; grid-template-columns: 78px minmax(0, 1fr); gap: 15px; align-items: center; min-height: 112px; padding: 16px; color: var(--ink); background: #fff; border: 1px solid var(--line); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.friendly-link-card:hover { color: var(--ink); transform: translateY(-2px); border-color: #b9aca2; box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.friendly-link-card__logo { display: grid; place-items: center; width: 78px; height: 78px; overflow: hidden; color: #999; background: #f3f1ec; border: 1px solid #e1ddd6; font: 800 13px/1 Arial, sans-serif; }
.friendly-link-card__logo img { width: 100%; height: 100%; padding: 7px; object-fit: contain; }
.friendly-link-card__body { display: flex; min-width: 0; flex-direction: column; gap: 5px; }
.friendly-link-card__body strong { font: 700 20px/1.16 Georgia, serif; }
.friendly-link-card__body small { color: var(--muted); font: 13px/1.4 Arial, sans-serif; }
.friendly-link-card__body em { margin-top: 3px; color: var(--red); font: normal 800 11px/1.2 Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; }
@media (max-width: 1020px) {
    .friendly-links-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .friendly-links-section { padding: 20px 14px; }
    .friendly-links-grid { grid-template-columns: 1fr; }
    .friendly-link-card { grid-template-columns: 64px minmax(0, 1fr); min-height: 92px; padding: 12px; }
    .friendly-link-card__logo { width: 64px; height: 64px; }
}

/* Układ v7: zwarte menu, mniejsze boksy kategorii i linki w prawej kolumnie */
.main-navigation__inner { justify-content: center; }
.main-navigation a { padding: 12px 9px 10px; font-size: 11px; letter-spacing: .012em; white-space: nowrap; }
.nav-home { padding-inline: 12px !important; }
.home-sidebar { display: grid; align-content: start; gap: 20px; min-width: 0; }
.category-strip { padding-block: 28px; }
.category-strip .section-heading { margin-bottom: 16px; }
.category-strip__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.category-strip .story-card__image { height: 128px; aspect-ratio: auto; }
.category-strip .story-card__body { padding-top: 8px; }
.category-strip .story-card__title,
.category-strip .story-card--wide .story-card__title,
.category-strip .story-card--compact .story-card__title { margin: 4px 0 6px; font-size: 17px; line-height: 1.16; }
.category-strip .story-card__excerpt { display: none; }
.category-strip .story-meta { font-size: 10px; }
.friendly-links-sidebar { padding: 17px; }
.friendly-links-sidebar h2 { margin-bottom: 10px; font-size: 20px; }
.friendly-links-compact { display: grid; gap: 7px; }
.friendly-link-compact { display: grid; grid-template-columns: 42px minmax(0, 1fr) 14px; gap: 9px; align-items: center; min-width: 0; padding: 7px; color: var(--ink); background: #fff; border: 1px solid #ddd8d0; }
.friendly-link-compact:hover { color: var(--ink); border-color: #bbaea4; background: #fffdf9; }
.friendly-link-compact__logo { display: grid; place-items: center; width: 42px; height: 42px; overflow: hidden; color: #999; background: #f4f1eb; border: 1px solid #e2ddd5; font: 800 8px/1 Arial, sans-serif; }
.friendly-link-compact__logo img { width: 100%; height: 100%; padding: 4px; object-fit: contain; }
.friendly-link-compact__body { min-width: 0; }
.friendly-link-compact__body strong { display: block; overflow: hidden; font: 700 14px/1.18 Georgia, serif; text-overflow: ellipsis; white-space: nowrap; }
.friendly-link-compact__body small { display: -webkit-box; overflow: hidden; margin-top: 3px; color: var(--muted); font: 10px/1.25 Arial, sans-serif; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.friendly-link-compact__arrow { color: var(--red); font-size: 13px; font-weight: 800; }
@media (max-width: 1180px) {
    .main-navigation a { padding-inline: 7px; font-size: 10px; }
}
@media (max-width: 1020px) {
    .main-navigation__inner { justify-content: initial; }
    .main-navigation a { padding: 12px 13px; font-size: 12px; }
    .category-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .category-strip .story-card__image { height: 150px; }
}
@media (max-width: 720px) {
    .category-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
    .category-strip .story-card__image { height: 104px; }
    .category-strip .story-card__title,
    .category-strip .story-card--compact .story-card__title { font-size: 15px; }
}

/* Układ v8: mniejsze sekcje kategorii i prawa kolumna reklamowa */
.category-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 34px;
    align-items: start;
}
.category-sections-column { min-width: 0; }
.category-sections-column .category-strip:first-child { border-top: 0; padding-top: 0; }
.category-sections-column .category-strip + .category-strip { margin-top: 26px; }
.category-content-layout .category-strip__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.category-content-layout .category-strip .story-card__image { height: 108px; }
.category-content-layout .category-strip .story-card__title,
.category-content-layout .category-strip .story-card--compact .story-card__title { font-size: 16px; line-height: 1.18; }
.category-archive-layout { padding-top: 0; }
.story-grid--category-archive { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
.story-grid--category-archive .story-card__image { max-height: 210px; }

.ads-sidebar { display: grid; align-content: start; gap: 16px; min-width: 0; }
.ads-sidebar__label { padding-bottom: 5px; color: #8a8a8a; border-bottom: 1px solid var(--line); font-size: 9px; font-weight: 800; letter-spacing: .16em; text-align: center; text-transform: uppercase; }
.ad-card { display: block; overflow: hidden; color: var(--ink); background: #fff; border: 1px solid var(--line); box-shadow: 0 4px 14px rgba(0,0,0,.045); }
.ad-card:hover { color: var(--ink); border-color: #b8aca2; box-shadow: 0 7px 20px rgba(0,0,0,.08); }
.ad-card--static { cursor: default; }
.ad-card--static:hover { border-color: var(--line); box-shadow: 0 4px 14px rgba(0,0,0,.045); }
.ad-card__image { display: grid; place-items: center; width: 100%; max-height: 300px; overflow: hidden; background: #f6f4ef; }
.ad-card__image img { width: 100%; max-height: 300px; object-fit: contain; }
.ad-card__body { display: block; padding: 11px 13px 12px; }
.ad-card__body strong { display: block; font: 700 16px/1.2 Georgia, serif; }
.ad-card__body small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.35; }
.ad-admin-placeholder { display: grid; gap: 7px; padding: 26px 18px; color: #666; text-align: center; background: repeating-linear-gradient(-45deg, #faf9f6, #faf9f6 9px, #f4f1eb 9px, #f4f1eb 18px); border: 1px dashed #bdb5aa; }
.ad-admin-placeholder strong { color: var(--ink); font: 700 18px/1.2 Georgia, serif; }
.ad-admin-placeholder span { font-size: 12px; }
.ad-admin-placeholder a { color: var(--red); font-size: 12px; font-weight: 800; }
.article-sidebar__stack { position: sticky; top: 20px; display: grid; gap: 22px; }
.article-sidebar__stack .ads-sidebar { position: static; }

@media (max-width: 1020px) {
    .category-content-layout { grid-template-columns: 1fr; }
    .category-content-layout .category-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .category-content-layout .category-strip .story-card__image { height: 145px; }
    .story-grid--category-archive { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ads-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ads-sidebar__label { grid-column: 1 / -1; }
    .article-sidebar__stack { position: static; }
}
@media (max-width: 720px) {
    .category-content-layout { gap: 26px; }
    .category-content-layout .category-strip__grid,
    .story-grid--category-archive,
    .ads-sidebar { grid-template-columns: 1fr; }
    .category-content-layout .category-strip .story-card__image { height: 170px; }
    .ad-card { max-width: 360px; width: 100%; margin-inline: auto; }
}

/* Imieniny na stronie głównej */
.name-days-card {
    position: relative;
    overflow: hidden;
    padding: 16px 17px 15px;
    background: linear-gradient(145deg, #fffdf8, #f2ece1);
    border-top: 4px solid var(--red);
}
.name-days-card::after {
    content: "";
    position: absolute;
    right: -25px;
    bottom: -36px;
    width: 105px;
    height: 105px;
    opacity: .07;
    border: 15px solid var(--red);
    border-radius: 50%;
}
.name-days-card__date {
    margin-bottom: 4px;
    color: var(--red);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.name-days-card h2 {
    position: relative;
    z-index: 1;
    margin: 0 0 7px;
    font: 700 18px/1.08 Georgia, serif;
}
.name-days-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #28231f;
    font: 700 13px/1.42 Arial, sans-serif;
}
.name-days-card small {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.35;
}
.name-days-card__edit {
    position: relative;
    z-index: 1;
    display: inline-block;
    margin-top: 9px;
    color: var(--red);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

/* Reklamy filmowe i materiały YouTube */
.ad-card__video {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
}
.ad-card__video video,
.ad-card__video iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: contain;
    background: #000;
}
.ad-card__link {
    display: inline-block;
    margin-top: 9px;
    color: var(--accent, #991b1b);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .02em;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.ad-card__link:hover { color: #650f0f; }

/* Układ v14: mniejszy artykuł główny, imieniny i reklama w prawej kolumnie */
.home-hero-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 30px;
    align-items: start;
    border-bottom: 1px solid var(--line);
}
.home-hero-layout .lead-story,
.home-hero-layout .lead-story__image,
.home-hero-layout .lead-story__img,
.home-hero-layout .lead-story__image .story-image-placeholder {
    min-height: 410px;
    height: 410px;
}
.home-hero-layout .lead-story__content { padding: 72px 30px 27px; }
.home-hero-layout .lead-story__content h1 {
    max-width: 760px;
    margin: 7px 0 9px;
    font-size: clamp(29px, 3.2vw, 44px);
    line-height: 1.04;
}
.home-hero-layout .lead-story__content p {
    max-width: 680px;
    margin-bottom: 9px;
    font-size: 15px;
    line-height: 1.38;
}
.home-hero-sidebar {
    display: grid;
    align-content: start;
    gap: 14px;
    min-width: 0;
}
.home-hero-sidebar .sidebar-block { margin: 0; }
.home-hero-sidebar .ads-sidebar {
    grid-template-columns: 1fr;
    gap: 8px;
}
.home-hero-sidebar .ads-sidebar__label { padding-bottom: 3px; }
.home-hero-sidebar .ad-card__image,
.home-hero-sidebar .ad-card__image img { max-height: 250px; }
.home-hero-sidebar .ad-card__body { padding: 8px 10px 9px; }
.home-hero-sidebar .friendly-links-sidebar { padding: 13px; }
.home-hero-sidebar .friendly-links-sidebar h2 { font-size: 17px; }
.home-hero-sidebar .friendly-links-compact { gap: 5px; }
.home-hero-sidebar .friendly-link-compact {
    grid-template-columns: 36px minmax(0, 1fr) 12px;
    gap: 7px;
    padding: 5px;
}
.home-hero-sidebar .friendly-link-compact__logo { width: 36px; height: 36px; }
.home-hero-sidebar .friendly-link-compact__body strong { font-size: 12px; }
.home-hero-sidebar .friendly-link-compact__body small { font-size: 9px; }

/* Zwarte najnowsze wiadomości po sekcji głównej */
.home-latest-section { padding-top: 31px; }
.home-latest-grid { gap: 24px 18px; }
.home-latest-grid .story-card__image { height: 132px; aspect-ratio: auto; }
.home-latest-grid .story-card__body { padding-top: 8px; }
.home-latest-grid .story-card__title,
.home-latest-grid .story-card--compact .story-card__title {
    margin: 4px 0 6px;
    font-size: 17px;
    line-height: 1.16;
}
.home-latest-grid .story-card__excerpt { display: none; }
.home-latest-grid .story-meta { font-size: 10px; }

.category-content-layout--no-sidebar { grid-template-columns: minmax(0, 1fr); }
.category-content-layout--no-sidebar .category-strip__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* Najczęściej czytane jako zwarta sekcja na dole strony */
.most-read-bottom {
    margin-top: 8px;
    border-top: 4px solid var(--red);
}
.ranking-list--bottom {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    background: var(--soft);
    border: 1px solid var(--line);
}
.ranking-list--bottom li {
    display: grid;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 8px;
    align-content: start;
    padding: 13px 14px;
    border: 0;
    border-right: 1px solid var(--line);
}
.ranking-list--bottom li:last-child { border-right: 0; }
.ranking-list--bottom li > span { font-size: 22px; line-height: 1; }
.ranking-list--bottom a { font-size: 13px; line-height: 1.2; }
.ranking-list--bottom small { margin-top: 4px; font-size: 10px; }

@media (max-width: 1100px) {
    .home-hero-layout { grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; }
    .home-hero-layout .lead-story,
    .home-hero-layout .lead-story__image,
    .home-hero-layout .lead-story__img,
    .home-hero-layout .lead-story__image .story-image-placeholder { height: 390px; min-height: 390px; }
    .home-latest-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .category-content-layout--no-sidebar .category-strip__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ranking-list--bottom { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ranking-list--bottom li { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
}

@media (max-width: 850px) {
    .home-hero-layout { grid-template-columns: 1fr; }
    .home-hero-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-hero-sidebar .friendly-links-sidebar { grid-column: 1 / -1; }
    .home-latest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .category-content-layout--no-sidebar .category-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ranking-list--bottom { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
    .home-hero-layout .lead-story,
    .home-hero-layout .lead-story__image,
    .home-hero-layout .lead-story__img,
    .home-hero-layout .lead-story__image .story-image-placeholder { height: 360px; min-height: 360px; }
    .home-hero-layout .lead-story__content { padding: 68px 18px 20px; }
    .home-hero-layout .lead-story__content h1 { font-size: 30px; }
    .home-hero-layout .lead-story__content p { display: none; }
    .home-hero-sidebar,
    .home-latest-grid,
    .category-content-layout--no-sidebar .category-strip__grid,
    .ranking-list--bottom { grid-template-columns: 1fr; }
    .home-hero-sidebar .friendly-links-sidebar { grid-column: auto; }
    .home-latest-grid .story-card__image { height: 180px; }
    .ranking-list--bottom li { border-right: 0; }
}

/* Układ v15: ostatnie wiadomości bezpośrednio pod artykułem prowadzącym */
.home-main-column {
    min-width: 0;
}
.home-main-column .home-latest-section {
    padding: 28px 0 0;
}
.home-main-column .section-heading--home-latest {
    margin-bottom: 16px;
    padding-bottom: 8px;
}
.home-main-column .section-heading--home-latest h2 {
    font-size: clamp(22px, 2.3vw, 29px);
}
.home-main-column .section-heading--home-latest > span {
    font-size: 11px;
}
.home-main-column .home-latest-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px 14px;
}
.home-main-column .home-latest-grid .story-card__image {
    height: 105px;
}
.home-main-column .home-latest-grid .story-card__title,
.home-main-column .home-latest-grid .story-card--compact .story-card__title {
    font-size: 15px;
    line-height: 1.16;
}
.home-main-column .home-latest-grid .eyebrow {
    font-size: 9px;
}

@media (max-width: 1100px) {
    .home-main-column .home-latest-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 19px 11px;
    }
    .home-main-column .home-latest-grid .story-card__image { height: 92px; }
    .home-main-column .home-latest-grid .story-card__title,
    .home-main-column .home-latest-grid .story-card--compact .story-card__title { font-size: 14px; }
}

@media (max-width: 850px) {
    .home-main-column .home-latest-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px 16px;
    }
    .home-main-column .home-latest-grid .story-card__image { height: 150px; }
}

@media (max-width: 560px) {
    .home-main-column .home-latest-grid { grid-template-columns: 1fr; }
    .home-main-column .home-latest-grid .story-card__image { height: 180px; }
}

/* Układ v16: reklamy pod imieninami, linki niżej, kategorie i galerie po cztery */
.home-hero-sidebar > .name-days-card { order: 1; }
.home-hero-sidebar > .ads-sidebar { order: 2; }
.home-hero-sidebar > .friendly-links-sidebar {
    order: 3;
    margin-top: 16px;
}
.home-hero-sidebar > .ads-sidebar + .friendly-links-sidebar {
    margin-top: 20px;
}

.category-content-layout--no-sidebar {
    display: block;
}
.category-content-layout--no-sidebar .category-sections-column,
.category-sections-column--full {
    width: 100%;
}
.category-content-layout--no-sidebar .category-strip__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px 14px;
}
.category-content-layout--no-sidebar .category-strip .story-card__image {
    height: 105px;
}
.category-content-layout--no-sidebar .category-strip .story-card__title,
.category-content-layout--no-sidebar .category-strip .story-card--compact .story-card__title {
    font-size: 15px;
    line-height: 1.16;
}
.category-content-layout--no-sidebar .category-strip .eyebrow {
    font-size: 9px;
}

.gallery-teasers {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px 14px;
}
.gallery-teaser__image {
    height: 128px;
    aspect-ratio: auto;
}
.gallery-teaser__image span {
    right: 6px;
    bottom: 6px;
    padding: 4px 6px;
    font-size: 10px;
}
.gallery-teaser h3 {
    margin-top: 7px;
    font-size: 16px;
    line-height: 1.16;
}

@media (max-width: 1020px) {
    .category-content-layout--no-sidebar .category-strip__grid,
    .gallery-teasers {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .category-content-layout--no-sidebar .category-strip .story-card__image,
    .gallery-teaser__image {
        height: 150px;
    }
}

@media (max-width: 560px) {
    .category-content-layout--no-sidebar .category-strip__grid,
    .gallery-teasers {
        grid-template-columns: 1fr;
    }
    .category-content-layout--no-sidebar .category-strip .story-card__image,
    .gallery-teaser__image {
        height: 190px;
    }
}

/* Układ v17: stała prawa kolumna przez całą stronę główną */
.home-page-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 30px;
    align-items: start;
}
.home-page-layout > .home-main-column { min-width: 0; }
.home-right-rail {
    display: grid;
    align-content: start;
    gap: 20px;
    min-width: 0;
    padding-left: 24px;
    border-left: 1px solid var(--line);
}
.home-right-rail > .name-days-card { order: 1; }
.home-right-rail > .ads-sidebar { order: 2; }
.home-right-rail > .friendly-links-sidebar { order: 3; }
.home-right-rail .sidebar-block { margin: 0; }
.home-right-rail .ads-sidebar {
    grid-template-columns: 1fr;
    gap: 16px;
}
.home-right-rail .ads-sidebar__label { grid-column: auto; }
.home-right-rail .ad-card { width: 100%; max-width: none; margin: 0; }

.home-lead-story,
.home-lead-story .lead-story__image,
.home-lead-story .lead-story__img,
.home-lead-story .lead-story__image .story-image-placeholder {
    height: 430px;
    min-height: 430px;
}
.home-lead-story .lead-story__content { padding: 72px 30px 27px; }
.home-lead-story .lead-story__content h1 {
    font-size: clamp(31px, 3.4vw, 48px);
    line-height: 1.04;
}
.home-lead-story .lead-story__content p { font-size: 16px; }

.home-category-sections { padding-top: 0; }
.home-category-strip + .home-category-strip { margin-top: 34px; }
.home-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px 14px;
}
.home-category-grid .story-card__image {
    height: 108px;
    aspect-ratio: auto;
}
.home-category-grid .story-card__title,
.home-category-grid .story-card--compact .story-card__title {
    font-size: 15px;
    line-height: 1.16;
}
.home-category-grid .eyebrow { font-size: 9px; }
.home-category-grid .story-meta { font-size: 10px; }

.home-gallery-teasers {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px 14px;
}
.home-gallery-teasers .gallery-teaser__image {
    height: 124px;
    aspect-ratio: auto;
}
.home-gallery-teasers .gallery-teaser h3 {
    font-size: 15px;
    line-height: 1.16;
}

@media (max-width: 1120px) {
    .home-page-layout {
        grid-template-columns: minmax(0, 1fr) 270px;
        gap: 24px;
    }
    .home-right-rail { padding-left: 18px; }
    .home-category-grid,
    .home-main-column .home-latest-grid,
    .home-gallery-teasers {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 19px 10px;
    }
    .home-category-grid .story-card__image,
    .home-main-column .home-latest-grid .story-card__image { height: 92px; }
    .home-gallery-teasers .gallery-teaser__image { height: 105px; }
    .home-category-grid .story-card__title,
    .home-category-grid .story-card--compact .story-card__title,
    .home-main-column .home-latest-grid .story-card__title,
    .home-main-column .home-latest-grid .story-card--compact .story-card__title { font-size: 14px; }
}

@media (max-width: 900px) {
    .home-page-layout { grid-template-columns: 1fr; }
    .home-right-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-left: 0;
        padding-top: 26px;
        border-left: 0;
        border-top: 1px solid var(--line);
    }
    .home-right-rail > .ads-sidebar,
    .home-right-rail > .friendly-links-sidebar { grid-column: 1 / -1; }
    .home-right-rail .ads-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-right-rail .ads-sidebar__label { grid-column: 1 / -1; }
    .home-category-grid,
    .home-main-column .home-latest-grid,
    .home-gallery-teasers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-category-grid .story-card__image,
    .home-main-column .home-latest-grid .story-card__image,
    .home-gallery-teasers .gallery-teaser__image { height: 150px; }
}

@media (max-width: 560px) {
    .home-lead-story,
    .home-lead-story .lead-story__image,
    .home-lead-story .lead-story__img,
    .home-lead-story .lead-story__image .story-image-placeholder {
        height: 360px;
        min-height: 360px;
    }
    .home-lead-story .lead-story__content { padding: 68px 18px 20px; }
    .home-lead-story .lead-story__content h1 { font-size: 30px; }
    .home-lead-story .lead-story__content p { display: none; }
    .home-category-grid,
    .home-main-column .home-latest-grid,
    .home-gallery-teasers,
    .home-right-rail,
    .home-right-rail .ads-sidebar { grid-template-columns: 1fr; }
    .home-right-rail > .ads-sidebar,
    .home-right-rail > .friendly-links-sidebar { grid-column: auto; }
    .home-category-grid .story-card__image,
    .home-main-column .home-latest-grid .story-card__image,
    .home-gallery-teasers .gallery-teaser__image { height: 190px; }
}

/* Ustawienia modułów strony głównej i duża reklama pozioma – v18 */
.home-page-layout--no-rail {
    grid-template-columns: minmax(0, 1fr);
}
.home-horizontal-ad {
    margin-top: 30px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
}
.home-horizontal-ad__label {
    margin-bottom: 7px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    text-align: right;
    text-transform: uppercase;
}
.home-horizontal-ad__card {
    overflow: hidden;
    border: 1px solid var(--line);
    background: #fff;
}
.home-horizontal-ad__card > a {
    display: block;
}
.home-horizontal-ad__card img {
    width: 100%;
    max-height: 250px;
    object-fit: contain;
    background: #f7f7f7;
}
.home-horizontal-ad__card video,
.home-horizontal-ad__card iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 5;
    border: 0;
    background: #000;
    object-fit: contain;
}
.home-horizontal-ad__body {
    display: flex;
    align-items: baseline;
    gap: 14px;
    padding: 10px 14px;
    border-top: 1px solid var(--line);
}
.home-horizontal-ad__body strong {
    font: 700 16px/1.2 Georgia, 'Times New Roman', serif;
}
.home-horizontal-ad__body span {
    color: var(--muted);
    font-size: 12px;
}
.home-horizontal-ad__placeholder {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 100px;
    padding: 22px;
    border: 2px dashed #c9c4bc;
    color: var(--muted);
    background: var(--soft);
}
.home-horizontal-ad__placeholder a {
    color: var(--red);
    font-weight: 800;
}

@media (max-width: 700px) {
    .home-horizontal-ad__card video,
    .home-horizontal-ad__card iframe { aspect-ratio: 16 / 9; }
    .home-horizontal-ad__body { display: block; }
    .home-horizontal-ad__body span { display: block; margin-top: 4px; }
}
