/* Pytania — czytelny układ redakcyjny zgodny z podstronami oferty. */
.mono-faq-page {
  --faq-yellow:#ffdd00;
  --faq-graphite:#58595b;
  --faq-ink:#222326;
  --faq-soft:#f3f3f1;
  --faq-line:rgba(88,89,91,.17);
  background:#fff;
  color:var(--faq-graphite);
}

.mono-faq-page .site-header.mono-header {
  position:relative;
  inset:auto;
  background:var(--faq-graphite);
  border-bottom:1px solid rgba(255,255,255,.14);
}

.faq-main {
  overflow:clip;
  font-family:"Open Sans",Arial,Helvetica,sans-serif;
}

.faq-hero {
  padding:48px 0;
  background:#fff;
}

.faq-hero-inner { max-width:none; }

.faq-kicker {
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 15px;
  color:var(--faq-graphite);
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.15em;
  line-height:1.25;
  text-transform:uppercase;
}

.faq-kicker::before {
  content:"";
  width:28px;
  height:3px;
  flex:0 0 auto;
  background:var(--faq-yellow);
}

.faq-hero h1 { max-width:1040px; }

.faq-index {
  border-top:1px solid rgba(88,89,91,.06);
  border-bottom:1px solid rgba(88,89,91,.09);
  background:var(--faq-soft);
}

.faq-index-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.faq-index-grid a {
  min-height:72px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:15px 18px;
  border-left:1px solid var(--faq-line);
  color:var(--faq-graphite);
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease;
}

.faq-index-grid a:last-child { border-right:1px solid var(--faq-line); }
.faq-index-grid a:hover,
.faq-index-grid a:focus-visible { background:var(--faq-yellow); }

.faq-index-grid span {
  color:rgba(88,89,91,.56);
  font-size:.59rem;
  font-weight:800;
  letter-spacing:.14em;
}

.faq-index-grid strong {
  color:var(--faq-ink);
  font-size:.75rem;
  font-weight:600;
  line-height:1.3;
}

.faq-section {
  padding:48px 0;
  scroll-margin-top:98px;
  background:#fff;
}

.faq-section:nth-child(even) { background:var(--faq-soft); }

.faq-section-heading {
  display:grid;
  gap:7px;
  margin:0 0 25px;
}

.faq-section-heading > span {
  width:fit-content;
  padding-bottom:6px;
  border-bottom:3px solid var(--faq-yellow);
  color:rgba(88,89,91,.55);
  font-size:.63rem;
  font-weight:700;
  letter-spacing:.15em;
}

.faq-section-heading h2 {
  margin:0;
  color:var(--faq-ink);
  font-size:clamp(1.85rem,3vw,2.75rem);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.045em;
}

.faq-list { border-top:1px solid var(--faq-line); }

.faq-item {
  display:grid;
  grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);
  gap:clamp(34px,6vw,88px);
  padding:25px 0 27px;
  border-bottom:1px solid var(--faq-line);
}

.faq-item h3 {
  margin:0;
  color:var(--faq-ink);
  font-size:1rem;
  font-weight:700;
  line-height:1.45;
}

.faq-answer { min-width:0; }

.faq-answer p {
  margin:0;
  color:var(--faq-graphite);
  font-size:.96rem;
  line-height:1.72;
}

.faq-answer p a {
  color:var(--faq-ink);
  font-weight:700;
  text-decoration-color:var(--faq-yellow);
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}

.faq-more-link {
  width:fit-content;
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:14px;
  padding-bottom:3px;
  border-bottom:2px solid var(--faq-yellow);
  color:var(--faq-ink);
  font-size:.76rem;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
}

.faq-more-link span { transition:transform .18s ease; }
.faq-more-link:hover span,
.faq-more-link:focus-visible span { transform:translateX(4px); }

@media (max-width:900px) {
  .faq-index { overflow-x:auto; }
  .faq-index-grid {
    width:max-content;
    min-width:100%;
    grid-template-columns:repeat(5,minmax(155px,1fr));
  }
  .faq-item {
    grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);
    gap:32px;
  }
}

@media (max-width:620px) {
  .faq-hero { padding:36px 0; }
  .faq-kicker { margin-bottom:13px; }
  .faq-index-grid a { min-height:66px; padding:13px 15px; }
  .faq-section { padding:36px 0; scroll-margin-top:88px; }
  .faq-section-heading { margin-bottom:22px; }
  .faq-section-heading h2 { font-size:1.75rem; }
  .faq-item {
    grid-template-columns:1fr;
    gap:9px;
    padding:21px 0 23px;
  }
  .faq-item h3 { font-size:.96rem; line-height:1.42; }
  .faq-answer p { font-size:.91rem; line-height:1.65; }
  .faq-more-link { margin-top:12px; font-size:.74rem; }
}

@media (prefers-reduced-motion:reduce) {
  .faq-index-grid a,
  .faq-more-link span { transition:none; }
}
