/* Source: refresh69.css */
/* Pan PV — odświeżenie 69: mocniejsza marka, krótsza ścieżka do kontaktu. */
:root {
  --accent: #008ec8;
  --accent-deep: #00679d;
  --sun: #ff9918;
  --sun-deep: #ed7410;
  --spark: #d8ff58;
  --night: #071a38;
  --sky: #dff7ff;
  --warm: #fff1d6;
  --curve: 26px;
}

html[data-theme="dark"] {
  --accent: #36c6ff;
  --accent-deep: #18a4dc;
  --sun: #ffae38;
  --sun-deep: #ff8e22;
  --spark: #dcff66;
  --night: #07101f;
  --sky: #0b2633;
  --warm: #2e2111;
}

body {
  background:
    radial-gradient(circle at 3% 9%, color-mix(in srgb, var(--accent) 9%, transparent), transparent 24rem),
    var(--bg);
}

::selection { background: var(--spark); color: #071a38; }

.site-header {
  border-bottom: 0 !important;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--accent) 22%, transparent), 0 12px 32px rgba(3, 28, 55, .06);
}

.site-header::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 3px;
  background: linear-gradient(90deg, var(--accent) 0 58%, var(--sun) 58% 82%, var(--spark) 82%);
}

@media (min-width: 761px) {
  .site-header .main-nav { gap: 0 clamp(5px, .68vw, 14px); }
  .site-header .main-nav a,
  .site-header .main-nav a:link,
  .site-header .main-nav a:visited {
    padding: 9px 5px;
    border-radius: 999px;
    transition: color .18s ease, background .18s ease, transform .18s ease;
  }
  .site-header .main-nav a:hover,
  .site-header .main-nav a:focus-visible {
    color: var(--accent-deep);
    background: color-mix(in srgb, var(--accent) 10%, transparent);
    text-decoration: none;
    transform: translateY(-1px);
  }
  .site-header .main-nav a[aria-current="page"] {
    color: #fff;
    background: linear-gradient(120deg, var(--accent-deep), var(--accent));
    padding-inline: 10px;
    text-decoration: none;
    box-shadow: 0 7px 18px color-mix(in srgb, var(--accent) 22%, transparent);
  }
  .site-header .main-nav a[data-nav="faq"]:not([aria-current="page"]) {
    color: #7b4300;
    background: color-mix(in srgb, var(--sun) 18%, transparent);
    padding-inline: 9px;
  }
  html[data-theme="dark"] .site-header .main-nav a[data-nav="faq"]:not([aria-current="page"]) { color: #ffc66f; }
}

.button,
.contact-form button,
.quality a.cta {
  background: linear-gradient(120deg, var(--accent-deep), var(--accent));
  box-shadow: 0 10px 26px color-mix(in srgb, var(--accent) 28%, transparent);
  font-weight: 700;
  transition: transform .18s ease, box-shadow .18s ease;
}

.button:hover,
.contact-form button:hover,
.quality a.cta:hover {
  background: linear-gradient(120deg, var(--accent), #1eb8ef);
  box-shadow: 0 14px 34px color-mix(in srgb, var(--accent) 34%, transparent);
  transform: translateY(-2px);
}

.button--sun {
  background: linear-gradient(120deg, var(--sun-deep), var(--sun));
  color: #221000;
  box-shadow: 0 10px 26px color-mix(in srgb, var(--sun) 32%, transparent);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  margin-bottom: 20px;
  padding: 7px 12px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 11%, transparent);
  color: var(--accent-deep);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.eyebrow::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--sun);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--sun) 20%, transparent);
}

.section-heading .eyebrow,
.reviews-heading .eyebrow,
.masthead-inner .eyebrow,
.contact-copy .eyebrow,
.grant-heading .eyebrow { margin-inline: auto; }

.home-hero,
.page-masthead,
.blog-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 9% 22%, color-mix(in srgb, var(--sun) 33%, transparent), transparent 19rem),
    radial-gradient(circle at 89% 9%, color-mix(in srgb, var(--accent) 28%, transparent), transparent 24rem),
    linear-gradient(135deg, color-mix(in srgb, var(--sky) 76%, var(--bg)), var(--bg) 58%, color-mix(in srgb, var(--warm) 72%, var(--bg)));
}

.home-hero::before,
.page-masthead::before {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  right: -64px;
  bottom: -78px;
  border-radius: 42% 58% 64% 36%;
  background: linear-gradient(145deg, var(--sun), #ffc23f);
  opacity: .9;
  rotate: 18deg;
}

.home-hero > *,
.page-masthead > * { position: relative; z-index: 1; }

.hero-title {
  background: linear-gradient(112deg, var(--night) 10%, var(--accent-deep) 56%, var(--accent));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

html[data-theme="dark"] .hero-title {
  background: linear-gradient(112deg, #fff 8%, #87deff 58%, var(--sun));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.home-cover,
.page-cover img,
.service-chapter .photo,
.solution-card {
  box-shadow: 0 24px 70px rgba(5, 43, 74, .13);
}

.solution-card {
  border: 1px solid color-mix(in srgb, var(--accent) 14%, var(--line));
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.solution-card:hover {
  transform: translateY(-6px);
  border-color: color-mix(in srgb, var(--accent) 44%, var(--line));
  box-shadow: 0 28px 70px rgba(5, 43, 74, .2);
}

.solution-card:nth-child(2) { background: color-mix(in srgb, var(--sky) 72%, var(--panel)); }
.solution-card:nth-child(3) { background: color-mix(in srgb, var(--warm) 78%, var(--panel)); }
.solution-card:nth-child(4) { background: color-mix(in srgb, var(--spark) 18%, var(--panel)); }

.realizations,
.home-process,
.details-section {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, var(--panel)), var(--panel));
}

.realization-card img { transition: transform .25s ease, filter .25s ease; }
.realization-card:hover img { transform: translateY(-4px); filter: saturate(1.12) contrast(1.03); }

.step { border-top: 4px solid var(--accent); }
.step:nth-child(2) { border-color: var(--sun); }
.step:nth-child(3) { border-color: var(--spark); }
.step b,
.step > strong { color: var(--accent-deep); font-weight: 800; }

/* Sekcja opinii pozostaje wizualnie zgodna z wersją 68. */
.reviews-section { --accent: #0068d5; }
html[data-theme="dark"] .reviews-section { --accent: #65adff; }
.reviews-section .eyebrow {
  display: block;
  width: auto;
  margin: 0 0 24px;
  padding: 0;
  border-radius: 0;
  background: none;
  color: var(--muted);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .02em;
  text-transform: none;
}
.reviews-section .eyebrow::before { content: none; }

/* Krótkie wejście do wiedzy zamiast wielkiej ściany FAQ na stronie głównej. */
.faq-teaser {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 70px;
  align-items: center;
  color: #fff;
  background:
    radial-gradient(circle at 96% 8%, rgba(255, 153, 24, .42), transparent 20rem),
    radial-gradient(circle at 10% 96%, rgba(44, 193, 249, .28), transparent 24rem),
    var(--night);
}

.faq-teaser h2,
.faq-teaser h3 { color: #fff; }
.faq-teaser p { color: #b9c7d9; }
.faq-teaser .eyebrow { background: rgba(255,255,255,.1); color: #8edfff; }
.faq-teaser__copy > p:not(.eyebrow) { max-width: 620px; margin-top: 24px; font-size: 19px; }
.faq-teaser__questions { display: grid; gap: 12px; }
.faq-teaser__question {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 20px 22px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  color: #fff;
  transition: transform .18s ease, background .18s ease;
}
.faq-teaser__question:hover { color: #fff; background: rgba(255,255,255,.11); transform: translateX(5px); }
.faq-teaser__number { color: var(--sun); font-size: 12px; font-weight: 900; }
.faq-teaser__arrow { color: var(--spark); font-size: 22px; }

/* Dedykowana podstrona FAQ. */
.faq-page-hero .masthead-inner { max-width: 980px; }
.faq-page-hero h1 span { color: var(--accent-deep); }
.faq-page-hero__chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 30px; }
.faq-page-hero__chips span { padding: 8px 12px; border-radius: 999px; background: var(--bg); box-shadow: 0 7px 18px rgba(6, 37, 62, .08); font-size: 13px; color: var(--ink); }

.faq-hub { max-width: 1180px; margin: 0 auto; padding: 72px var(--edge) 110px; }
.faq-toolbar { position: sticky; top: 79px; z-index: 20; display: grid; gap: 16px; padding: 18px; border: 1px solid color-mix(in srgb, var(--accent) 15%, var(--line)); border-radius: 22px; background: color-mix(in srgb, var(--bg) 90%, transparent); backdrop-filter: blur(18px); box-shadow: 0 16px 42px rgba(5, 43, 74, .08); }
.faq-search { position: relative; }
.faq-search::before { content: "⌕"; position: absolute; left: 18px; top: 50%; translate: 0 -52%; color: var(--accent-deep); font-size: 27px; }
.faq-search input { width: 100%; min-height: 54px; padding: 12px 18px 12px 50px; border: 1px solid var(--line); border-radius: 15px; background: var(--bg); color: var(--ink); }
.faq-search input:focus { border-color: var(--accent); outline: 3px solid color-mix(in srgb, var(--accent) 20%, transparent); }
.faq-category-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.faq-category-buttons button { border: 0; border-radius: 999px; padding: 9px 13px; background: var(--panel); color: var(--muted); font-size: 13px; font-weight: 700; }
.faq-category-buttons button:hover,
.faq-category-buttons button.is-active { background: var(--night); color: #fff; }
.faq-status { min-height: 22px; color: var(--muted); font-size: 13px; }
.faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: start; margin-top: 28px; }
.faq-card { align-self: start; border: 1px solid color-mix(in srgb, var(--accent) 14%, var(--line)); border-radius: 20px; background: var(--bg); overflow: hidden; box-shadow: 0 14px 38px rgba(5, 43, 74, .07); }
.faq-card:nth-child(3n+2) { border-color: color-mix(in srgb, var(--sun) 28%, var(--line)); }
.faq-card:nth-child(3n) { border-color: color-mix(in srgb, var(--spark) 38%, var(--line)); }
.faq-card summary { position: relative; padding: 23px 56px 23px 23px; color: var(--ink); font-size: 18px; font-weight: 750; line-height: 1.35; }
.faq-card summary::after { content: "+"; position: absolute; top: 18px; right: 20px; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--accent) 12%, var(--panel)); color: var(--accent-deep); font-size: 22px; }
.faq-card[open] summary::after { content: "−"; background: var(--sun); color: #221000; }
.faq-card__answer { display: block; padding: 0 23px 24px; }
.faq-card__answer p { color: var(--muted); line-height: 1.72; }
.faq-card__tag { display: inline-flex; margin-top: 18px; padding: 5px 9px; border-radius: 999px; background: color-mix(in srgb, var(--accent) 10%, transparent); color: var(--accent-deep); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.faq-empty { display: none; grid-column: 1/-1; padding: 44px; border-radius: 22px; background: var(--panel); text-align: center; }
.faq-empty.is-visible { display: block; }

.punch-cta { margin: 0 auto 110px; max-width: 1180px; padding: 48px; border-radius: 30px; background: linear-gradient(125deg, var(--sun), #ffc341 44%, var(--spark)); color: #15200b; display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center; box-shadow: 0 24px 70px rgba(191, 113, 12, .18); }
.punch-cta h2 { color: #15200b; font-size: clamp(31px, 4vw, 54px); }
.punch-cta p { color: #493514; max-width: 650px; margin-top: 14px; }
.punch-cta__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.punch-cta .button { background: var(--night); color: #fff; box-shadow: none; }
.punch-cta .button.secondary { background: rgba(255,255,255,.72); color: #15200b; }

/* Pełna treść SEO pozostaje dostępna dla ludzi w semantycznych akordeonach. */
.seo-library,
.article-archive {
  max-width: 1180px;
  margin: 0 auto 72px;
  border: 1px solid color-mix(in srgb, var(--accent) 22%, var(--line));
  border-radius: 28px;
  background: var(--bg);
  overflow: hidden;
  box-shadow: 0 18px 55px rgba(5, 43, 74, .08);
}
.seo-library > summary,
.article-archive > summary {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 28px 72px 28px 30px;
  background: linear-gradient(120deg, color-mix(in srgb, var(--sky) 76%, var(--bg)), color-mix(in srgb, var(--warm) 58%, var(--bg)));
}
.seo-library > summary::after,
.article-archive > summary::after {
  content: "+";
  position: absolute;
  right: 27px;
  top: 50%;
  translate: 0 -50%;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--sun);
  color: #251300;
  font-size: 26px;
}
.seo-library[open] > summary::after,
.article-archive[open] > summary::after { content: "−"; }
.seo-library > summary span,
.article-archive > summary span { color: var(--accent-deep); font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.seo-library > summary strong,
.article-archive > summary strong { color: var(--ink); font-size: clamp(22px, 3vw, 32px); line-height: 1.25; }
.seo-library > summary small,
.article-archive > summary small { color: var(--muted); font-size: 14px; }
.seo-library__content,
.article-archive__content { padding: 38px 32px 48px; }
.seo-library__content .faq-archive { padding: 0; }
.faq-archive .faq-heading { margin-bottom: 30px; }
.faq-archive .faq-heading h2 { font-size: clamp(30px, 4vw, 46px); }
.faq-archive .faq-heading > p:last-child { margin-top: 15px; }
.faq-archive .faq-workspace { display: block; }
.faq-archive .faq-topic { border-bottom: 1px solid var(--line); }
.faq-archive .faq-topic:first-of-type { border-top: 1px solid var(--line); }
.faq-archive .faq-topic-back { display: none !important; }
.faq-archive .faq-cta { margin-top: 25px; }
.article-archive { margin-top: 88px; margin-bottom: 0; }
.article-archive__content { max-width: 860px; margin: auto; }
.article-archive__content h3 { margin: 42px 0 16px; color: var(--ink); font-size: 25px; line-height: 1.35; }
.article-archive__content p,
.article-archive__content li { color: var(--muted); font-size: 17px; line-height: 1.8; }
.article-archive__content p + p { margin-top: 18px; }
.article-archive__content ul,
.article-archive__content ol { padding-left: 22px; }
.article-archive__content li { margin: 8px 0; }
.article-archive__content a { color: var(--accent-deep); text-decoration: underline; text-underline-offset: 3px; }

/* Nowy artykuł: magazynowy układ, nie niekończący się dokument. */
.article--2026 > .article-header { max-width: 1100px; padding: 65px var(--edge) 0; }
.article--2026 .article-header h1 { max-width: 1020px; background: linear-gradient(112deg, var(--night), var(--accent-deep) 60%, var(--sun-deep)); -webkit-background-clip: text; background-clip: text; color: transparent; }
html[data-theme="dark"] .article--2026 .article-header h1 { background: linear-gradient(112deg, #fff, #80dcff 58%, #ffbc58); -webkit-background-clip: text; background-clip: text; color: transparent; }
.article--2026 .article-header .lead { margin: 0 auto 28px; max-width: 820px; }
.article-visual { max-width: 1320px; margin: 0 auto; padding: 0 var(--edge); }
.article-visual__frame { position: relative; min-height: 520px; overflow: hidden; border-radius: 30px; box-shadow: 0 26px 80px rgba(5, 43, 74, .18); }
.article-visual img { width: 100%; height: 520px; object-fit: cover; filter: saturate(1.08) contrast(1.05); }
.article-visual__overlay { position: absolute; inset: auto 28px 28px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.article-visual__stat { padding: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 17px; background: rgba(4, 18, 38, .8); backdrop-filter: blur(14px); color: #fff; }
.article-visual__stat strong { display: block; color: var(--spark); font-size: 25px; }
.article-visual__stat span { color: #c4d0df; font-size: 12px; }
.article-magazine { max-width: 1160px; margin: 0 auto; padding: 84px var(--edge) 110px; }
.article-decision { display: grid; grid-template-columns: 1.05fr .95fr; gap: 25px; align-items: stretch; }
.decision-lead { padding: 38px; border-radius: 28px; color: #fff; background: var(--night); }
.decision-lead .eyebrow { color: #87ddff; background: rgba(255,255,255,.08); }
.decision-lead h2 { color: #fff; font-size: clamp(36px, 5vw, 60px); }
.decision-lead h2 span { color: var(--spark); }
.decision-lead p { margin-top: 22px; color: #bdcada; font-size: 18px; }
.decision-points { display: grid; gap: 12px; }
.decision-point { padding: 22px; border-radius: 20px; background: var(--panel); border-left: 6px solid var(--accent); }
.decision-point:nth-child(2) { border-color: var(--sun); }
.decision-point:nth-child(3) { border-color: var(--spark); }
.decision-point strong { display: block; margin-bottom: 6px; font-size: 18px; }
.decision-point p { font-size: 15px; }
.magazine-section { padding: 88px 0 0; }
.magazine-section__head { display: grid; grid-template-columns: .65fr 1.35fr; gap: 50px; margin-bottom: 34px; }
.magazine-section__head h2 { font-size: clamp(34px, 4.7vw, 56px); }
.magazine-section__head p { align-self: end; font-size: 18px; }
.value-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.value-card { min-height: 230px; padding: 26px; border-radius: 23px; background: color-mix(in srgb, var(--sky) 68%, var(--panel)); }
.value-card:nth-child(2) { background: color-mix(in srgb, var(--warm) 78%, var(--panel)); }
.value-card:nth-child(3) { background: color-mix(in srgb, var(--spark) 20%, var(--panel)); }
.value-card__number { display: block; margin-bottom: 46px; color: var(--accent-deep); font-size: 12px; font-weight: 900; }
.value-card h3 { margin-bottom: 12px; }
.value-card p { font-size: 15px; }
.model-box { position: relative; overflow: hidden; padding: 40px; border-radius: 28px; background: linear-gradient(125deg, var(--accent-deep), var(--accent)); color: #fff; }
.model-box::after { content: "700 zł"; position: absolute; right: -5px; bottom: -36px; color: rgba(255,255,255,.1); font-size: 112px; font-weight: 900; line-height: 1; }
.model-box h3,
.model-box p { position: relative; z-index: 1; color: #fff; }
.model-box__compare { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; margin-top: 30px; }
.model-result { padding: 23px; border-radius: 19px; background: rgba(255,255,255,.12); }
.model-result span { display: block; color: #d4eefa; font-size: 12px; }
.model-result strong { display: block; margin-top: 5px; color: #fff; font-size: 30px; }
.model-arrow { color: var(--spark); font-size: 34px; }
.production-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.production-card { padding: 23px 14px; border-radius: 18px; text-align: center; background: var(--panel); border-top: 5px solid var(--sun); }
.production-card strong { display: block; font-size: 23px; }
.production-card span { display: block; margin-top: 8px; color: var(--muted); font-size: 12px; }
.day-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.day-step { padding: 25px; border-radius: 21px; background: var(--night); color: #fff; }
.day-step time { color: var(--sun); font-size: 28px; font-weight: 850; }
.day-step strong { display: block; margin: 30px 0 8px; color: #fff; }
.day-step p { color: #b9c7d9; font-size: 14px; }
.article-folds { display: grid; gap: 12px; }
.article-fold { border-radius: 20px; background: var(--panel); overflow: hidden; }
.article-fold summary { position: relative; padding: 22px 58px 22px 23px; color: var(--ink); font-size: 19px; font-weight: 750; }
.article-fold summary::after { content: "+"; position: absolute; right: 22px; top: 18px; color: var(--accent-deep); font-size: 27px; }
.article-fold[open] summary::after { content: "−"; color: var(--sun-deep); }
.article-fold__body { padding: 0 23px 25px; color: var(--muted); }
.article-fold__body p + p { margin-top: 13px; }
.article-fold__body ul { margin: 15px 0 0; padding-left: 20px; }
.article-fold__body li { margin: 7px 0; }
.source-note { margin-top: 30px; padding: 22px; border-left: 5px solid var(--sun); background: color-mix(in srgb, var(--warm) 55%, var(--panel)); border-radius: 0 18px 18px 0; }
.source-note p { font-size: 14px; }
.source-note a { color: var(--accent-deep); text-decoration: underline; }

/* Starsze długie wpisy dostają automatyczne rozdziały rozwijane. */
.article-body.is-condensed { max-width: 880px; }
.article-body.is-condensed > p:first-child { padding: 25px; border-radius: 20px; background: color-mix(in srgb, var(--sky) 55%, var(--panel)); color: var(--ink); }
.article-intro-more,
.article-chapter { margin: 12px 0; border: 1px solid var(--line); border-radius: 18px; background: var(--bg); overflow: hidden; }
.article-intro-more > summary,
.article-chapter > summary { position: relative; padding: 19px 52px 19px 21px; color: var(--ink); font-size: 18px; font-weight: 750; line-height: 1.35; }
.article-intro-more > summary::after,
.article-chapter > summary::after { content: "+"; position: absolute; right: 20px; top: 15px; color: var(--accent-deep); font-size: 25px; }
.article-intro-more[open] > summary::after,
.article-chapter[open] > summary::after { content: "−"; color: var(--sun-deep); }
.article-intro-more__content,
.article-chapter__content { padding: 0 21px 23px; }
.article-chapter__content > :first-child { margin-top: 0; }

.article a:not(.button),
.faq-hub a:not(.button) { color: var(--accent-deep); }

@media (max-width: 900px) {
  .faq-teaser,
  .article-decision,
  .magazine-section__head,
  .punch-cta { grid-template-columns: 1fr; }
  .faq-grid { grid-template-columns: 1fr; }
  .value-flow,
  .day-flow { grid-template-columns: 1fr; }
  .production-grid { grid-template-columns: repeat(2, 1fr); }
  .production-card:last-child { grid-column: 1/-1; }
  .article-visual__overlay { grid-template-columns: 1fr; }
  .article-visual__frame,
  .article-visual img { height: 620px; }
  .article-visual__overlay { inset: auto 16px 16px; }
  .punch-cta { margin-inline: 18px; padding: 32px 24px; }
  .seo-library { margin-inline: 18px; }
}

@media (max-width: 760px) {
  body { font-size: 16px; }
  .home-hero,
  .page-masthead { padding-top: 62px; padding-bottom: 56px; }
  .home-hero::before,
  .page-masthead::before { width: 120px; height: 120px; }
  .faq-toolbar { top: 70px; border-radius: 0 0 18px 18px; margin-inline: calc(var(--edge) * -1); padding-inline: var(--edge); }
  .faq-category-buttons { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; scrollbar-width: none; }
  .faq-category-buttons button { flex: 0 0 auto; }
  .faq-hub { padding-top: 34px; padding-bottom: 75px; }
  .faq-card summary { font-size: 17px; }
  .article-magazine { padding-top: 55px; }
  .article--2026 > .article-header { padding-top: 46px; text-align: left; }
  .article--2026 .article-header .lead { margin-inline: 0; }
  .decision-lead,
  .model-box { padding: 27px 23px; }
  .model-box__compare { grid-template-columns: 1fr; }
  .model-arrow { rotate: 90deg; justify-self: center; }
  .article-visual { padding: 0 14px; }
  .article-visual__frame,
  .article-visual img { height: 560px; }
  .article-visual img { object-position: 58% center; }
  .seo-library__content,
  .article-archive__content { padding: 28px 20px 38px; }
  .seo-library > summary,
  .article-archive > summary { padding: 23px 62px 23px 21px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Source: safe72.css */
/* FINAL72: wyłącznie bezpieczne akcenty wizualne. Brak globalnych zmian układu i DOM. */

/* Starsze wpisy korzystają z istniejących rozdziałów final70. Zmieniamy tylko kolor. */
.article.reading-layout .article-chapter,
.article.reading-layout .article-intro-more {
  border-color: color-mix(in srgb, var(--accent) 18%, var(--line));
  box-shadow: 0 12px 32px rgba(5, 43, 74, .055);
}
.article.reading-layout .article-chapter:nth-of-type(6n + 1) {
  background: color-mix(in srgb, #e2f7ff 68%, var(--bg));
  border-left: 5px solid #14a6d9;
}
.article.reading-layout .article-chapter:nth-of-type(6n + 2) {
  background: color-mix(in srgb, #fff0d5 68%, var(--bg));
  border-left: 5px solid #ffad2f;
}
.article.reading-layout .article-chapter:nth-of-type(6n + 3) {
  background: color-mix(in srgb, #e8f8dc 68%, var(--bg));
  border-left: 5px solid #7fbd44;
}
.article.reading-layout .article-chapter:nth-of-type(6n + 4) {
  background: color-mix(in srgb, #f1e8ff 66%, var(--bg));
  border-left: 5px solid #8d63da;
}
.article.reading-layout .article-chapter:nth-of-type(6n + 5) {
  background: color-mix(in srgb, #dff8ef 68%, var(--bg));
  border-left: 5px solid #24a77b;
}
.article.reading-layout .article-chapter:nth-of-type(6n) {
  background: color-mix(in srgb, #ffe5df 66%, var(--bg));
  border-left: 5px solid #ef765c;
}

/* Wpis #21 ma własny magazynowy layout z final70 i celowo nie jest nadpisywany. */

/* Wpis #22: szeroki, czytelny hero i kafle programu, bez wpływu na inne blogi. */
.article--grant-program {
  width: min(1220px, calc(100% - 32px));
  max-width: none;
  padding-top: clamp(36px, 5vw, 72px);
}
.article--grant-program > .article-header {
  max-width: 980px;
  margin: 0 auto 42px;
  padding: clamp(28px, 5vw, 58px);
  border: 1px solid color-mix(in srgb, var(--accent) 18%, var(--line));
  border-radius: 30px;
  background:
    radial-gradient(circle at 8% 16%, rgba(255, 180, 48, .25), transparent 18rem),
    radial-gradient(circle at 94% 8%, rgba(27, 188, 229, .23), transparent 21rem),
    linear-gradient(135deg, color-mix(in srgb, #e7f8ff 72%, var(--panel)), var(--panel) 58%, color-mix(in srgb, #fff0db 64%, var(--panel)));
  box-shadow: 0 24px 66px rgba(5, 43, 74, .12);
}
.article--grant-program > .article-header h1 {
  background: linear-gradient(112deg, var(--night), var(--accent-deep) 62%, #c56b00);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
html[data-theme="dark"] .article--grant-program > .article-header h1 {
  background: linear-gradient(112deg, #fff, #80dcff 60%, #ffc466);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.article--grant-program > .article-visual { padding: 0; }
.article--grant-program .article-body { max-width: 900px; margin: 72px auto 0; }
.grant-snapshot {
  display: grid;
  grid-template-columns: 1.45fr repeat(3, 1fr);
  gap: 12px;
  margin: 24px auto 0;
}
.grant-snapshot > * {
  min-width: 0;
  padding: 24px;
  border-radius: 22px;
  border: 1px solid color-mix(in srgb, var(--accent) 14%, var(--line));
  background: color-mix(in srgb, #e7f8ff 68%, var(--panel));
}
.grant-snapshot > :nth-child(2) { background: color-mix(in srgb, #fff0d5 72%, var(--panel)); }
.grant-snapshot > :nth-child(3) { background: color-mix(in srgb, #e7f7da 72%, var(--panel)); }
.grant-snapshot > :nth-child(4) { background: color-mix(in srgb, #efe7ff 70%, var(--panel)); }
.grant-snapshot strong { display: block; color: var(--ink); font-size: clamp(21px, 2.2vw, 30px); line-height: 1.1; }
.grant-snapshot p,
.grant-snapshot span { display: block; margin-top: 9px; color: var(--muted); font-size: 14px; line-height: 1.55; }

/* Przezroczysty plik logo nie potrzebuje maskowania tłem. */
.brand img,
.footer-brand img { background: transparent !important; }

@media (max-width: 980px) {
  .grant-snapshot { grid-template-columns: 1fr 1fr; }
  .grant-snapshot__intro { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .article--grant-program { width: min(100% - 24px, 1220px); }
  .article--grant-program > .article-header { padding: 25px 20px; border-radius: 23px; }
  .article--grant-program .article-visual__overlay { position: static; grid-template-columns: 1fr; padding: 12px; background: var(--night); }
  .article--grant-program .article-visual__frame,
  .article--grant-program .article-visual img { min-height: 0; height: auto; }
  .article--grant-program .article-body { margin-top: 48px; }
  .grant-snapshot { grid-template-columns: 1fr; }
  .grant-snapshot__intro { grid-column: auto; }
}

/* Source: repair73.css */
/* Readable, open articles. Theme-specific surfaces preserve text contrast. */
.article { --read-text:#34445b; --read-blue:#00638f; --read-purple:#7142ab; --read-orange:#9a4b00; --read-green:#206c42; --read-surface:#fff; }
html[data-theme=dark] .article { --read-text:#d4deeb; --read-blue:#75d7ff; --read-purple:#d6b5ff; --read-orange:#ffc078; --read-green:#8be4ae; --read-surface:#101a29; }
.article.reading-layout { width:min(1240px,100%); max-width:1240px; padding:48px clamp(16px,3vw,40px) 80px; grid-template-columns:210px minmax(0,850px); gap:0 36px; }
.article.reading-layout:not(:has(.reading-index)) { grid-template-columns:minmax(0,850px); }
.article.reading-layout:not(:has(.reading-index)) :is(.article-body,.article-cta) { grid-column:1; width:100%; }
.article.reading-layout .article-header,.article--grant-program>.article-header { padding:clamp(24px,4vw,48px); border-radius:28px; border:1px solid var(--line); background:radial-gradient(ellipse at top left,#06a5da1f,transparent 65%),radial-gradient(ellipse at bottom right,#ffad2f24,transparent 55%),var(--read-surface); width:100%; margin-bottom:40px; }
.article .article-header h1 { font-size:clamp(30px,3.5vw,52px); line-height:1.17; letter-spacing:-.035em; text-wrap:balance; color:var(--ink); }
.article .article-header .back { display:block; margin-bottom:18px; }
.article .article-body { color:var(--read-text); font-size:18px; line-height:1.85; max-width:850px; }
.article .article-body p { margin:0 0 20px; }
.article .article-body li { margin-bottom:10px; }
.article .article-body :is(ul,ol) { padding-left:1.4em; margin:20px 0; }
.article .article-body h2 { font-size:clamp(24px,2.4vw,32px); line-height:1.3; margin:0 0 24px; color:var(--section-accent,var(--read-blue)); }
.article .article-body h3 { font-size:clamp(21px,2vw,25px); line-height:1.35; color:var(--section-accent,var(--read-blue)); }
.article .article-body strong { color:var(--section-accent,var(--read-blue)); font-weight:750; }
.article .article-body a { color:var(--read-blue); overflow-wrap:anywhere; }
.article .article-body :is(h2,h3) strong { color:inherit; }
.article-section { --section-accent:var(--read-blue); --tint:#049edb; padding:clamp(22px,3vw,36px); margin:26px 0; border:1px solid color-mix(in srgb,var(--tint) 28%,var(--line)); border-left:5px solid var(--tint); border-radius:22px; background:color-mix(in srgb,var(--tint) 7%,var(--read-surface)); scroll-margin-top:110px; box-shadow:0 10px 30px #06365508; }
.article-section:nth-of-type(4n+2) { --tint:#ed9a23; --section-accent:var(--read-orange); }
.article-section:nth-of-type(4n+3) { --tint:#4ca46e; --section-accent:var(--read-green); }
.article-section:nth-of-type(4n+4) { --tint:#a077d3; --section-accent:var(--read-purple); }
.article-section>:last-child { margin-bottom:0!important; }
.article .article-body>p:first-child { padding:24px; border-radius:20px; background:color-mix(in srgb,#049edb 9%,var(--read-surface)); }
.article .article-body blockquote { margin:28px 0; padding:24px; border-left:4px solid #e6a02d; background:color-mix(in srgb,#e6a02d 10%,var(--read-surface)); border-radius:0 18px 18px 0; color:var(--ink); }
.article .article-body table { font-size:15px; color:var(--read-text); }
.article .article-body .table-scroll { max-width:100%; overflow-x:auto; margin:24px 0; border:1px solid var(--line); border-radius:14px; }
.article .article-body th { background:color-mix(in srgb,#049edb 13%,var(--read-surface)); color:var(--ink); }
.article .reading-index { top:105px; }
.article .reading-index a { color:var(--muted); }
.article .reading-index a:hover { color:var(--accent); }
html[data-theme=dark] .grant-snapshot>* { background:#122334; color:#e0edfa; }
html[data-theme=dark] .grant-snapshot>:nth-child(2) { background:#302419; }
html[data-theme=dark] .grant-snapshot>:nth-child(3) { background:#172b22; }
html[data-theme=dark] .grant-snapshot>:nth-child(4) { background:#261d37; }
html[data-theme=dark] .grant-snapshot :is(p,span) { color:#c1ccdc; }
.grant-amount,.grant-date>p:first-child { color:#0071bd; background-image:linear-gradient(110deg,#0071bd 0%,#008ee6 36%,#c6f3ff 46%,#fff 50%,#65ceff 54%,#0071bd 66%,#0071bd 100%); background-size:280% 100%; background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; animation:grant-shimmer73 4.6s linear infinite; filter:drop-shadow(0 0 5px #168dff55); }
.grant-date>p:first-child strong { color:inherit; }
html[data-theme=dark] :is(.grant-amount,.grant-date>p:first-child) { background-image:linear-gradient(110deg,#49baff 0%,#49baff 36%,#a4eaff 46%,#fff 50%,#8edfff 54%,#49baff 66%,#49baff 100%); }
@keyframes grant-shimmer73 { 0% { background-position:150% 0; text-shadow:-8px 0 16px #168dff44; } 60%,100% { background-position:-150% 0; text-shadow:8px 0 20px #168dff66; } }
.why-new-articles { max-width:1160px; margin:0 auto; padding:64px clamp(20px,4vw,48px); }
.why-new-articles>h2 { font-size:clamp(30px,4vw,46px); margin:12px 0 28px; }
.why-new-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.why-new-card { display:flex; flex-direction:column; gap:20px; padding:28px; border:1px solid var(--line); border-top:5px solid #039cdb; border-radius:22px; background:color-mix(in srgb,#039cdb 8%,var(--bg)); color:var(--ink); transition:transform .2s,box-shadow .2s; }
.why-new-card:nth-child(2) { border-top-color:#a078ce; background:color-mix(in srgb,#a078ce 8%,var(--bg)); }
.why-new-card:nth-child(3) { border-top-color:#e6a02d; background:color-mix(in srgb,#e6a02d 8%,var(--bg)); }
.why-new-card:hover { transform:translateY(-4px); box-shadow:0 15px 35px #0071bd18; }
.why-new-card h3 { font-size:23px; line-height:1.35; }
.why-new-card p { font-size:16px; line-height:1.7; color:var(--muted); }
.why-new-card>span:last-child { margin-top:auto; font-weight:700; color:var(--accent); }
/* Prevent min-content width from pushing any page outside the viewport. */
main,section,article,.header-inner,.footer-inner { min-width:0; }
img,video,iframe { max-width:100%; }
h1,h2,h3,p,li { overflow-wrap:break-word; }
.grant-hero-copy,.grant-hero-inner>* { min-width:0; }
@media(max-width:1000px) {
 .article.reading-layout { display:block; width:100%; padding-inline:clamp(16px,4vw,32px); }
 .article .reading-index { position:static; margin:0 0 28px; }
 .article .article-body { margin-inline:auto; }
 .article .article-header { margin-bottom:26px; }
 .why-new-grid { grid-template-columns:1fr; }
}
@media(max-width:620px) {
 .article .article-header { padding:24px 18px; border-radius:22px; }
 .article .article-body { font-size:17px; line-height:1.8; }
 .article-section { padding:22px 18px; border-radius:18px; margin-block:20px; }
 .article .article-body>p:first-child { padding:20px 18px; }
 .article .meta { flex-wrap:wrap; gap:8px; font-size:12px; }
 .article--grant-program .article-body { margin-top:30px; }
 .grant-hero h1 { font-size:clamp(34px,9vw,52px); }
 .grant-date>p:first-child { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) { .grant-amount,.grant-date>p:first-child { animation:none; -webkit-text-fill-color:currentColor; background:none; } .why-new-card { transition:none; } }

/* Latest articles: award story is the central visual focus. */
.why-new-articles { max-width:1320px; padding-top:76px; padding-bottom:86px; }
.why-new-articles>h2,.why-new-articles>.eyebrow { text-align:center; margin-inline:auto; }
.why-new-articles>h2 { margin-bottom:66px; }
.why-new-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr); align-items:center; gap:24px; }
.why-new-card { padding:26px; }
.why-new-card h3 { font-size:21px; }
.why-new-card.why-new-card--service { border-top-color:#a078ce; background:color-mix(in srgb,#a078ce 8%,var(--bg)); }
.why-new-card.why-new-card--award { position:relative; border:1px solid #dba542; border-top:5px solid #e8b247; padding:0 0 30px; gap:22px; transform:translateY(-22px); background:linear-gradient(145deg,#fff2cc,var(--bg) 72%); animation:award-glow75 4s ease-in-out infinite; }
.why-new-card--award>.why-award-image { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; border-radius:17px 17px 0 0; }
.why-new-card--award>:not(.why-award-image) { margin-left:28px; margin-right:28px; }
.why-new-card--award h3 { font-size:25px; line-height:1.3; }
.why-new-card--award>.eyebrow { color:#845400; background:#edb84724; }
.why-new-card--award>span:last-child { color:#936000; }
html[data-theme=dark] .why-new-card.why-new-card--award { background:linear-gradient(145deg,#352811,#15130e 72%); }
html[data-theme=dark] .why-new-card--award>.eyebrow,html[data-theme=dark] .why-new-card--award>span:last-child { color:#f8cd74; }
@keyframes award-glow75 { 0%,100% { box-shadow:0 12px 35px #c18a2526,0 0 18px #e6af3826; transform:translateY(-22px) scale(1); } 50% { box-shadow:0 16px 48px #c18a2540,0 0 32px #e6af3852; transform:translateY(-25px) scale(1.012); } }
@media(max-width:1000px) {
 .why-new-grid { grid-template-columns:1fr; gap:24px; }
 .why-new-articles>h2 { margin-bottom:32px; }
 .why-new-card.why-new-card--award { order:-1; transform:none; animation:award-glow-mobile75 4s ease-in-out infinite; }
 .why-new-card--award>.why-award-image { max-height:380px; }
 .why-new-card h3 { font-size:23px; }
}
@keyframes award-glow-mobile75 { 0%,100% { box-shadow:0 8px 25px #c18a2520,0 0 12px #e6af3820; } 50% { box-shadow:0 12px 34px #c18a2535,0 0 24px #e6af3845; } }
@media(prefers-reduced-motion:reduce) { .why-new-card.why-new-card--award { animation:none; } }

