/* Full-text readability refinement for the seven secondary pages only.
   No shared production tokens, navigation, media or submission logic are changed. */
.secondary-readable #main :is(h1,h2,h3,p,li,summary,label,.btn) {
  -webkit-hyphens: none;
  hyphens: none;
}
.secondary-readable #main h2 {
  max-width: 36ch;
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.18;
  text-wrap: balance;
}
.secondary-readable #main h3 {
  font-size: clamp(1.4rem, 2vw, 1.65rem);
  line-height: 1.25;
  text-wrap: pretty;
}
.secondary-readable #main p { max-width: 68ch; }
.secondary-readable #main :is(.card p,.step p,.list-stack li,.project-evidence .muted,.faq p) {
  font-size: 1.0625rem;
  line-height: 1.65;
}
.secondary-readable #main .section {
  padding-block: clamp(2.75rem, 5vw, 4.5rem);
}
.secondary-readable #main .section--tight { padding-block: 2.5rem; }
.secondary-readable #main .hero.hero-layout .hero-layout__inner { min-height: 0; padding-block: 2.5rem; }
.secondary-readable #main .hero-layout__copy { max-width: min(850px, 78%); }
.secondary-readable #main .hero .lead { max-width: 64ch; line-height: 1.6; }
.secondary-readable #main .hero .mono-note {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.55;
  letter-spacing: normal;
}
.secondary-readable #main .btn {
  max-width: 100%;
  min-height: 44px;
  white-space: normal;
  line-height: 1.4;
  text-align: center;
}
.secondary-readable #main .grid :is(.card,.step) { min-width: 0; }
.secondary-readable #main .card { padding: 1.5rem; box-shadow: none; }
.secondary-readable #main .card > p { margin-top: .75rem; }
.secondary-readable #main .grid-3,
.secondary-readable #main .grid-4 {
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1.5rem 2rem;
}
.secondary-readable #main .grid-2 { gap: 1.5rem 2rem; }
.secondary-readable #main .grid > .card { display: flex; flex-direction: column; }
.secondary-readable #main .grid > .card > h3 { margin-block: .75rem .6rem; }
.secondary-readable #main .card > .badge { align-self: flex-start; }
.secondary-readable #main .card:has(> .card__standalone-link) > p:last-of-type { margin-bottom: 1rem; }
.secondary-readable #main .card > .card__standalone-link { margin-top: auto; align-self: flex-start; }
.secondary-readable #main .card__standalone-link {
  margin-top: 1rem;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  line-height: 1.4;
  text-align: left;
}
.secondary-readable #main .steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 2rem;
}
.secondary-readable #main .step { text-align: left; }
.secondary-readable #main .step :is(p,h3) { max-width: 46ch; margin-inline: 0; }
.secondary-readable #main .step h3 { margin-block: .7rem .5rem; }
.secondary-readable #main .faq { max-width: 860px; }
.secondary-readable #main .faq details { padding-block: 1rem; }
.secondary-readable #main .faq summary { font-size: 1.4rem; line-height: 1.3; padding-right: 2rem; }
.secondary-readable #main .faq p { margin-top: 1rem; }
.secondary-readable #main .list-stack { max-width: 70ch; line-height: 1.65; }
.secondary-readable #main .list-stack li + li { margin-top: 1rem; }
.secondary-readable #main .inline-lead { max-width: 780px; margin-top: 1.75rem; padding: 1.5rem; }
.secondary-readable #main .inline-lead__fields input {
  min-height: 54px;
  font-size: 1.0625rem;
}
.secondary-readable #main .inline-lead__label > span { font-size: 1rem; }
.secondary-readable #main :is(.inline-lead__privacy,.inline-lead__promise,.inline-lead__error) { font-size: .9375rem; line-height: 1.6; }
.secondary-readable #main .reading-panel { margin-top: 2rem; }
.secondary-readable #main .reading-panel__title { font-size: 1.4rem; }
.secondary-readable #main .reading-panel__links a { font-size: 1rem; line-height: 1.5; }
/* Keep all four people and their complete biographies, with links below the text. */
.about-readable #zespol .grid-2 > .card {
  display: flex;
  flex-direction: column;
  grid-row: auto;
  grid-template-rows: none;
  gap: 0;
}
.about-readable #zespol .card > h3 { margin-top: 1.25rem; }
.about-readable #zespol .card > p.u-mt-3 { margin-top: auto; padding-top: 1.25rem; }
.about-readable #zespol .card > p.hero__cta { padding-top: 1.25rem; margin-bottom: 0; }
.about-readable #zespol .card > p.mono { font-size: .9375rem; line-height: 1.5; }
.about-readable #zespol .card > p.u-mt-2 { margin-bottom: 0; }
.about-readable #main .continuity-callout { padding: 1.5rem 0 0; border-left: 0; background: transparent; gap: 1.5rem; }
.about-readable #historia :is(p,li) { font-size: 1.0625rem; line-height: 1.65; }
.about-readable #historia .mono { font-size: 1rem; }
/* Real projects keep the original images, IDs, details and full descriptions. */
.farms-readable #main .realcard figcaption { padding: 1.25rem; }
.farms-readable #main .realcard-head strong { font-size: 1.45rem; line-height: 1.25; }
.farms-readable #main .realcard-facts { font-size: .9375rem; line-height: 1.5; }
.farms-readable #main .realcard-details :is(p,summary) { font-size: 1rem; line-height: 1.6; }
/* Long reading pages keep one comfortable measure, rather than stretching across the screen. */
.thermal-readable #main .container--narrow { max-width: 860px; }
.thermal-readable #main .container--narrow > p,
.farms-readable #main .container > p { line-height: 1.7; }
@media (min-width: 761px) and (max-width: 1050px) {
  .secondary-readable #main .steps { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 1000px) {
  .secondary-readable #main .hero-layout__copy { max-width: 100%; }
}
@media (max-width: 760px) {
  .secondary-readable #main .container { padding-inline: 24px; }
  .secondary-readable #main .hero.hero-layout .hero-layout__inner { padding-block: 1.75rem; }
  .secondary-readable #main .hero.hero-layout .display { font-size: 2rem; line-height: 1.12; }
  .secondary-readable #main .hero.hero-layout .lead { font-size: 1.0625rem; }
  .secondary-readable #main .hero .eyebrow { font-size: .8125rem; line-height: 1.5; letter-spacing: .12em; }
  .secondary-readable #main .hero__cta .btn { width: 100%; font-size: 1rem; padding: .9rem 1rem; justify-content: center; }
  .secondary-readable #main .grid-2,
  .secondary-readable #main .grid-3,
  .secondary-readable #main .grid-4,
  .secondary-readable #main .steps { grid-template-columns: 1fr; gap: 1.5rem; }
  .secondary-readable #main h2 { max-width: none; font-size: 1.8rem; }
  .secondary-readable #main h3 { font-size: 1.45rem; }
  .secondary-readable #main .card { padding: 1.25rem; border-radius: 1rem; }
  .secondary-readable #main .card__standalone-link { width: 100%; }
  .secondary-readable #main .inline-lead { padding: 1.25rem 0; }
  .secondary-readable #main .inline-lead__fields { grid-template-columns: 1fr; }
  .secondary-readable #main .inline-lead__action .btn { width: 100%; justify-content: center; }
  .secondary-readable #main .project-evidence__facts { font-size: .9375rem; line-height: 1.5; }
  .secondary-readable #main .reading-panel { padding: 1.25rem; }
  .about-readable #zespol .card > p.u-mt-3 { margin-top: 0; }
  .about-readable #zespol .team-portrait { max-width: 100%; }
  .about-readable #main .metrics__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.75rem 1.25rem; }
  .construction-readable #main .metrics__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.75rem 1.25rem; }
  .farms-readable #main .project-wall { grid-template-columns: 1fr; gap: 1.5rem; }
}
@media (max-width: 355px) {
  .about-readable #main .metrics__grid,
  .construction-readable #main .metrics__grid { grid-template-columns: 1fr; }
}

/* Preserve the complete long introduction after the existing early action. */
.secondary-readable #main .hero .hero-context { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--slate-d); font-size: 1rem; line-height: 1.6; }
/* Supporting links sit inside paragraphs in the source: align those wrappers. */
.secondary-readable #main .grid > .card > p:has(> .card__standalone-link) {
  margin-top: auto;
  margin-bottom: 0;
  padding-top: 1rem;
}
.secondary-readable #main .card > p > .card__standalone-link { margin-block: 0; }
