@charset "UTF-8";
/* AltCoat project subsite — additions on top of the shared molin.pl stylesheet.
   Uses the same tokens, typography and hairline rules; adds only what a
   single-page project site needs. */

/* --- sticky anchor navigation --- */
.site-header{position:sticky;top:0}
.nav a[aria-current="true"]{color:var(--blue);border-color:var(--blue)}

/* --- hero fact strip --- */
.facts-strip{border-top:1px solid var(--line);background:var(--soft)}
.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.facts-grid > div{background:var(--soft);padding:26px 28px 28px 0}
.facts-grid > div + div{padding-left:28px}
.facts-grid dt{font-size:.74rem;text-transform:uppercase;letter-spacing:.13em;font-weight:600;color:var(--muted)}
.facts-grid dd{margin:11px 0 0;font-family:var(--serif);font-size:1.42rem;line-height:1.25;letter-spacing:-.03em}
.facts-grid dd small{display:block;font-family:var(--sans);font-size:.8rem;letter-spacing:0;color:var(--muted);margin-top:6px}

/* --- two-column narrative --- */
.narrative{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.narrative .eyebrow{color:var(--blue);margin-bottom:20px}
.narrative h2{margin-bottom:0}
.narrative p{color:var(--muted)}
.narrative p + p{margin-top:1.1rem}

/* --- numbered approach cards reuse .research-grid --- */

/* --- work programme rows --- */
.wp-list{border-top:1px solid var(--line)}
.wp-row{display:grid;grid-template-columns:.55fr 2fr;gap:40px;border-bottom:1px solid var(--line);padding:32px 0;align-items:start}
.wp-code{font-family:var(--serif);font-size:1.2rem;color:var(--blue)}
.wp-row h3{font-size:1.35rem}
.wp-row p{font-size:.96rem;color:var(--muted);margin-top:10px;max-width:720px}

/* --- test matrix table --- */
.matrix-wrap{overflow-x:auto;border-top:1px solid var(--line)}
table.matrix{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px}
table.matrix th,table.matrix td{text-align:left;padding:15px 22px 15px 0;border-bottom:1px solid var(--line);vertical-align:top}
table.matrix th{font-size:.74rem;text-transform:uppercase;letter-spacing:.13em;font-weight:600;color:var(--muted)}
table.matrix td{color:var(--muted)}
table.matrix td:first-child{color:var(--ink)}
.table-note{font-size:.82rem;color:var(--muted);margin-top:18px;max-width:720px}

/* --- team --- */
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.team-col h3{font-size:1.1rem;padding-bottom:16px;border-bottom:1px solid var(--line)}
.team-col .org{font-size:.82rem;color:var(--muted);margin-top:7px}
.person{padding:18px 0;border-bottom:1px solid var(--line)}
.person strong{font-weight:600;font-size:1rem}
.person span{display:block;font-size:.87rem;color:var(--muted);margin-top:5px}

/* --- partners --- */
.partner-row{display:flex;flex-wrap:wrap;gap:22px;align-items:stretch}
.partner-row .project-logo{width:190px;height:110px}
.partner-name{font-size:.9rem;font-weight:600;margin-top:10px}

/* --- funding acknowledgement --- */
.funding-note{border-left:2px solid var(--mauve);background:var(--soft);padding:24px 28px;font-size:.93rem;color:var(--muted);max-width:820px}
.funding-note strong{color:var(--ink);font-weight:600}

/* --- empty-state for outputs --- */
.outputs-empty{padding:26px;background:var(--soft);color:var(--muted);font-size:.95rem}

@media(max-width:1050px){
  .narrative{gap:45px}
  .facts-grid{grid-template-columns:repeat(2,1fr)}
  .team-grid{gap:45px}
}
@media(max-width:760px){
  .site-header{position:static}
  .narrative,.team-grid{grid-template-columns:1fr;gap:32px}
  .facts-grid{grid-template-columns:1fr}
  .facts-grid > div,.facts-grid > div + div{padding:20px 0 22px}
  .facts-grid dd{font-size:1.3rem}
  .wp-row{grid-template-columns:1fr;gap:12px;padding:26px 0}
  .partner-row .project-logo{width:100%;max-width:260px}
}

/* --- partner name plates (used until official logo files are dropped in) --- */
.partner-plate{display:flex;width:190px;height:110px;padding:16px;align-items:center;justify-content:center;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px;font-family:var(--serif);font-size:1.02rem;line-height:1.3;letter-spacing:-.02em;color:var(--ink)}
@media(max-width:760px){.partner-plate{width:100%;max-width:260px}}

/* --- funder logo inside the funding acknowledgement --- */
.funder-plate{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:6px;padding:12px 16px;margin-bottom:20px}
.funding-note .funder-logo{display:block;width:280px;max-width:100%;height:auto}
.funding-note p{margin:0}
@media(max-width:760px){.funding-note .funder-logo{width:220px}}

/* --- framing: whose contribution this site describes --- */
.scope-note{max-width:740px;margin-top:22px;padding-left:16px;border-left:2px solid var(--mauve);font-size:.95rem;color:var(--muted)}
.wp-tag{display:inline-block;vertical-align:middle;margin-left:10px;padding:3px 9px;border:1px solid var(--line);border-radius:3px;background:#fff;font:600 .68rem/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}
.wp-tag-joint{color:var(--mauve)}
@media(max-width:760px){.wp-tag{display:block;width:fit-content;margin:8px 0 0}}
