/* Bolt & Beam — home-2026.css (home only; classes prefixed h / hero / pcard / prog) */
.hero{padding-block:var(--s7) 0;position:relative;overflow:clip}
.hero__in{display:grid;gap:var(--s6);align-items:end}
.hero__copy{padding-block-end:var(--s6)}
.hero h1{font-size:var(--t-display);line-height:.88;color:#f1ede3}
.hero h1 span{display:block;color:var(--bolt-lt)}
.hero .lead{margin-block:var(--s5) var(--s6);max-inline-size:46ch}
.hero__ph{margin:0;margin-inline:calc(var(--gutter) * -1)}
.hero__ph img{inline-size:100%;aspect-ratio:4/3;object-fit:cover}
.ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block-start:1px solid #8a8f84;margin:0;padding-block-end:var(--s6)}
.ledger div{padding:var(--s4) var(--s4) var(--s4) 0;border-block-end:1px solid var(--band-line);display:grid;gap:var(--s1);align-content:start}
.ledger dt{font-family:var(--f-display);font-weight:700;font-size:clamp(2.75rem,2rem + 3vw,4.5rem);line-height:.95;color:#fff}
.ledger dd{margin:0;color:var(--band-muted);line-height:1.4}
@media (min-width:640px){.ledger{grid-template-columns:repeat(4,minmax(0,1fr))}.ledger div{border-block-end:0;padding-inline-end:var(--s5)}.ledger div+div{padding-inline-start:var(--s4);border-inline-start:1px solid var(--band-line)}}
@media (min-width:1000px){
  .hero{padding-block-start:var(--s8)}
  .hero__in{grid-template-columns:minmax(0,7fr) minmax(0,6fr);gap:var(--s7);align-items:center}
  .hero__copy{padding-block-end:var(--s7)}
  .hero__ph{margin-inline:0 calc(var(--gutter) * -1)}
  .hero__ph img{aspect-ratio:4/3.4}
}


.hbooks__grid{display:grid;gap:var(--s7) var(--s6)}
.hbooks__side{display:grid;gap:var(--s6);align-content:space-between}
.pcard--row{grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:var(--s5);align-items:start}
.pcard--row .pcard__ph{grid-row:1/5}
.pcard--row .pcard__m{margin-block-start:0}
@media (max-width:599px){.pcard--row{grid-template-columns:1fr}.pcard--row .pcard__ph{grid-row:auto}}
@media (min-width:1000px){.hbooks__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.pcard--row{grid-template-columns:1fr}.pcard--row .pcard__ph{grid-row:auto}.pcard--row h3{font-size:2.25rem}}

/* services */
.hsvc__in{display:grid;gap:var(--s7)}
.hsvc__ph{margin:0}
.hsvc__ph img{inline-size:100%;aspect-ratio:4/3;object-fit:cover}
.hsvc__ph figcaption{margin-block-start:var(--s3);color:var(--band-muted);line-height:1.45}
.svlist{list-style:none;padding:0;border-block-start:1px solid #8a8f84}
.svlist a{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 var(--s4);padding-block:var(--s4);border-block-end:1px solid var(--band-line);text-decoration:none;color:#f1ede3;min-block-size:44px}
.svlist__n{grid-row:1/4;font-family:var(--f-display);font-weight:700;font-size:1.75rem;color:var(--bolt-lt);line-height:1.1}
.svlist__t{font-family:var(--f-display);font-weight:700;font-size:clamp(1.75rem,1.4rem + 1vw,2.375rem);text-transform:uppercase;line-height:1.05}
.svlist__d{color:var(--band-muted)}
.svlist__s{font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--band-muted);margin-block-start:var(--s2)}
.svlist a:hover .svlist__t,.svlist a:focus-visible .svlist__t{color:var(--bolt-lt);text-decoration:underline}
.hsvc .sec-head{margin-block-end:var(--s5)}
@media (min-width:1000px){.hsvc__in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s8);align-items:start}.hsvc__ph{position:sticky;inset-block-start:calc(var(--header) + var(--s5))}.hsvc__ph img{aspect-ratio:4/5}}

/* live programme */
.hprog{background:var(--paper-2)}
.hprog__in{display:grid;gap:var(--s7)}
.hprog .lead{margin-block-start:var(--s4)}
.prog{list-style:none;padding:0;display:grid;border-block-start:1px solid var(--ink)}
.prog li{padding-block:var(--s5);border-block-end:1px solid var(--line-strong);display:grid;gap:var(--s3)}
.prog__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s2) var(--s5)}
.prog__n{font-family:var(--f-display);font-weight:700;font-size:clamp(1.875rem,1.5rem + 1.4vw,2.75rem);text-transform:uppercase;line-height:1;color:var(--ink);text-decoration:none}
a.prog__n{display:inline-flex;align-items:center;min-block-size:44px}
a.prog__n:hover{color:var(--brand-ink);text-decoration:underline}
.prog__w{display:flex;align-items:baseline;gap:var(--s2);color:var(--muted)}
.prog__w b{font-family:var(--f-display);font-size:2.5rem;line-height:1;color:var(--ink)}
.prog__m{font-size:1rem;color:var(--muted)}
@media (min-width:1000px){.hprog__in{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--s8)}.hprog__head{position:sticky;inset-block-start:calc(var(--header) + var(--s5));align-self:start}}

/* accreditations */
.hcred__top{display:grid;gap:var(--s4);margin-block-end:var(--s6)}
.hcred .btn{margin-block-start:var(--s6)}
@media (min-width:1000px){.hcred__top{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s7);align-items:end}}
/* tender */
.htender{background:var(--paper-2)}
.htender__in{display:grid;gap:var(--s7);align-items:center}
.htender h2{max-inline-size:14ch}
.htender .lead{margin-block:var(--s4) var(--s6)}
.htender__ph{margin:0}
.htender__ph img{inline-size:100%;aspect-ratio:3/2;object-fit:cover}
@media (min-width:900px){.htender__in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s8)}}
@media (min-width:1000px){.pcard--lead .pcard__ph img{aspect-ratio:1/1}.pcard--row .pcard__ph img{aspect-ratio:16/9}}
