/* Bolt & Beam — inner-2026.css (work, project, services, credentials, tender, credits, 404, forms demo) */
.phead{padding-block:var(--s7) var(--s7);border-block-end:1px solid var(--line-strong)}
.phead__in{display:grid;gap:var(--s6);align-items:end}
.phead h1{max-inline-size:14ch}
.phead .lead{margin-block-start:var(--s5)}
.phead__ph{margin:0;max-inline-size:360px}
.phead__ph img{inline-size:100%;aspect-ratio:4/5;object-fit:cover}
@media (min-width:900px){.phead{padding-block:var(--s8) var(--s8)}.phead--ph .phead__in{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.phead__ph{justify-self:end;inline-size:100%}}
.h-s{font-size:var(--t-h3);margin-block-end:var(--s5)}
.opt{font-weight:400;color:var(--muted)}

/* work list */
.filter{flex-wrap:wrap;gap:var(--s2);margin-block-end:var(--s5)}
.js .filter{display:flex}
.filter button{font:inherit;display:inline-flex;align-items:center;min-block-size:44px;padding:var(--s2) var(--s4);border:1px solid var(--line-strong);background:var(--field);color:var(--ink);font-weight:500;cursor:pointer}
.filter button:hover{border-color:var(--ink);background:var(--paper-2)}
.filter button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.count{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-block-end:var(--s3)}
.ledg{list-style:none;padding:0;border-block-start:1px solid var(--ink)}
.lrow{display:grid;gap:var(--s5);padding-block:var(--s6);border-block-end:1px solid var(--line-strong)}
.lrow__ph{display:block;background:var(--paper-2)}
.lrow__ph img{inline-size:100%;aspect-ratio:3/2;object-fit:cover}
.lrow h2{font-size:clamp(2.5rem,1.9rem + 2.4vw,4.25rem);margin-block:var(--s2) var(--s3)}
.lrow h2 a{text-decoration:none;color:var(--ink)}
.lrow h2 a:hover{color:var(--brand-ink);text-decoration:underline}
.lrow__sum{color:var(--muted);margin-block-end:var(--s4)}
.lrow__f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3) var(--s5);margin:0 0 var(--s3);padding-block:var(--s3);border-block:1px solid var(--line)}
.lrow__f dt,.titleblock dt,.spec dt,.review dt{font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted)}
.lrow__f dd,.titleblock dd,.spec dd,.review dd{margin:0}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s4)}
.empty{padding-block:var(--s7);font-size:var(--t-lead)}
@media (min-width:900px){.lrow{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:var(--s7);align-items:center}.lrow:nth-child(even) .lrow__ph{order:2}.lrow__f{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* project */
.pj-head{padding-block:var(--s4) var(--s6)}
.pj-head__in{display:grid;gap:var(--s5);align-items:end}
.pj-head h1{margin-block-start:var(--s2)}
.idx--in{margin:0}
.pj-head .meta{margin:0}
@media (min-width:900px){.pj-head__in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s7)}.pj-head h1{font-size:clamp(4.5rem,2rem + 6vw,8.5rem)}}
.pj-hero figure{margin:0}
.pj-hero img{inline-size:100%;aspect-ratio:21/9;object-fit:cover}
@media (max-width:699px){.pj-hero img{aspect-ratio:4/3}}
.pj-body{padding-block-start:var(--s6)}
.pj-body__in{display:grid;gap:var(--s7)}
.titleblock{border:1px solid var(--ink);background:var(--card)}
.titleblock__h{font-size:.875rem;font-family:var(--f-sans);letter-spacing:.16em;text-transform:uppercase;line-height:1.4;padding:var(--s2) var(--s4);background:var(--ink);color:var(--paper)}
.titleblock dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.titleblock dl>div{padding:var(--s3) var(--s4);border-block-end:1px solid var(--line);border-inline-end:1px solid var(--line)}
.titleblock__prog{padding:var(--s4);border-block-start:1px solid var(--ink);display:grid;gap:var(--s2)}
@media (min-width:900px){.titleblock dl{grid-template-columns:repeat(4,minmax(0,1fr))}.titleblock dl>div:nth-child(4n){border-inline-end:0}.titleblock dl>div:nth-last-child(-n+4){border-block-end:0}.titleblock__prog{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--s5)}}
.pj-story{display:grid;gap:var(--s5)}
.pj-story__t{display:grid;gap:var(--s4)}
.pj-story__first{font-size:var(--t-lead);color:var(--ink);line-height:1.5}
.scope{list-style:none;padding:0;counter-reset:s;border-block-start:1px solid var(--ink)}
.scope li{counter-increment:s;display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--s3);padding-block:var(--s3);border-block-end:1px solid var(--line)}
.scope li::before{content:counter(s,decimal-leading-zero);font-family:var(--f-display);font-weight:700;font-size:1.5rem;color:var(--brand-ink);line-height:1.2}
@media (min-width:900px){.pj-story{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:var(--s8);grid-template-areas:"t h" "t s" "b .";align-items:start}.pj-story__t{grid-area:t}.pj-story .h-s{grid-area:h;margin:0 0 var(--s4)}.scope{grid-area:s}.pj-story .btn-row{grid-area:b;margin-block-start:var(--s4)}}
.rel{border-block-start:1px solid var(--line-strong)}
.rel__g{display:grid;gap:var(--s6)}
.pcard--rel h3{font-size:2.5rem}
@media (min-width:800px){.rel__g{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s7)}}

/* services */
.jump{border-block-end:1px solid var(--line-strong);background:var(--card)}
.jump ul{list-style:none;padding:0;display:flex;flex-wrap:wrap}
.jump a{display:inline-flex;align-items:center;gap:var(--s2);min-block-size:52px;padding-inline:var(--s4);text-decoration:none;color:var(--ink);font-weight:500;border-inline-end:1px solid var(--line)}
.jump li:first-child a{padding-inline-start:0}
.jump a span{font-family:var(--f-display);font-weight:700;color:var(--brand-ink);font-size:1.125rem}
.jump a:hover{color:var(--brand-ink);text-decoration:underline}
.svc{padding-block:var(--s7);border-block-end:1px solid var(--line-strong)}
.svc__in{display:grid;gap:var(--s5);align-items:center}
.svc__ph{margin:0}
.svc__ph img{inline-size:100%;aspect-ratio:3/2;object-fit:cover}
.svc__n{font-family:var(--f-display);font-weight:700;font-size:2rem;color:var(--brand-ink);line-height:1}
.svc h2{margin-block:var(--s2) var(--s4)}
.svc__lede{font-size:var(--t-lead);color:var(--ink);line-height:1.45;margin-block-end:var(--s3)}
.svc__body{color:var(--muted);margin-block-end:var(--s5)}
.spec{display:grid;gap:var(--s3);margin:0;padding-block-start:var(--s4);border-block-start:1px solid var(--ink)}
@media (min-width:640px){.spec{grid-template-columns:1fr 1fr;gap:var(--s5)}}
@media (min-width:1000px){.svc{padding-block:var(--s8)}.svc__in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s8)}.svc--r .svc__ph{order:2}}
.scta__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s6)}
.scta h2{font-size:var(--t-h2);max-inline-size:14ch}
.scta .lead{margin-block-start:var(--s4)}

/* credentials */
.cgroup{padding-block:var(--s7);border-block-end:1px solid var(--line-strong)}
.cgroup__in{display:grid;gap:var(--s5)}
.cgroup__n{font-family:var(--f-display);font-weight:700;font-size:2rem;color:var(--brand-ink);line-height:1;margin-block-end:var(--s2)}
.cgroup__h h2{font-size:var(--t-h3);margin-block-end:var(--s3)}
.cgroup__h p:last-child{color:var(--muted)}
.cgroup .plates{display:grid}
.cgroup .plates li p{color:var(--muted);margin-block-start:var(--s2)}
@media (min-width:900px){.cgroup{padding-block:var(--s8)}.cgroup__in{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--s8)}.cgroup .plates{grid-template-columns:repeat(2,minmax(0,1fr))}.cgroup .plates li{border-inline-end:1px solid var(--line-strong)}.cgroup .plates li:nth-child(even){border-inline-end:0}.cgroup .plates li:last-child,.cgroup .plates li:nth-last-child(2):nth-child(odd){border-block-end:0}.cgroup .plates li:last-child:nth-child(odd){grid-column:1/-1;border-inline-end:0}}
.cgroup .plates b{font-size:2rem}
.pack__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s5)}
.pack h2{font-size:var(--t-h3);margin-block-end:var(--s3)}

/* tender */
.tnd__in{display:grid;gap:var(--s7)}
.tnd .form-card{max-inline-size:none}
.steps{list-style:none;padding:0;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink);background:var(--field);margin-block-end:var(--s2)}
.steps li+li{border-inline-start:1px solid var(--line-strong)}
.steps button{font:inherit;inline-size:100%;min-block-size:56px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;padding:var(--s2) var(--s3);border:0;background:transparent;color:var(--muted);cursor:pointer;font-weight:600;text-align:start}
.steps button span{font-family:var(--f-display);font-size:1.125rem;line-height:1}
.steps button:hover{background:var(--paper-2);color:var(--ink)}
.steps button[aria-current=step]{background:var(--ink);color:var(--paper)}
.steps button:focus-visible{outline-offset:-3px}
.tform fieldset.step{display:grid;gap:var(--s5)}
.tform legend{font-family:var(--f-display);font-weight:700;font-size:var(--t-h3);text-transform:uppercase;line-height:1;margin-block-end:var(--s5)}
.tform .field legend{font-family:var(--f-sans);font-size:1rem;font-weight:600;text-transform:none;margin-block-end:var(--s2)}
.tform__nav{display:none;justify-content:space-between}
.js .tform__nav{display:flex}
.review{display:grid;gap:0;margin:0;border-block-start:1px solid var(--ink)}
.review>div{display:grid;gap:var(--s1);padding-block:var(--s3);border-block-end:1px solid var(--line)}
@media (min-width:640px){.review>div{grid-template-columns:200px minmax(0,1fr);gap:var(--s4)}}
.confirm h2{font-size:clamp(2.5rem,2rem + 2.4vw,4.5rem);color:var(--brand-ink);word-break:break-word}
.prefill{margin-block-end:var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--brand);background:var(--card);max-inline-size:900px}
.note{margin-block-start:var(--s4);color:var(--muted);max-inline-size:900px}
.tnd__side{padding:var(--s6) var(--s5)}
.tnd__side .h-s{color:#fff}
.next{list-style:none;padding:0;display:grid;gap:var(--s5);margin-block-end:var(--s6)}
.next b{display:block;font-family:var(--f-display);font-size:1.75rem;text-transform:uppercase;font-weight:700;line-height:1.1;color:var(--bolt-lt);margin-block-end:var(--s1)}
.desk{padding:var(--s4);border:1px solid var(--band-line);display:block;color:#fff}
@media (min-width:1000px){.tnd__in{grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:start;gap:var(--s7)}.tnd__side{position:sticky;inset-block-start:calc(var(--header) + var(--s5));padding:var(--s6)}}
@media (min-width:640px) and (max-width:999px){.next{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* credits / 404 / forms demo */
.credits{list-style:none;padding:0;display:grid;border-block-start:1px solid var(--ink);margin-block-end:var(--s6)}
.credits li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--s4);align-items:center;padding-block:var(--s3);border-block-end:1px solid var(--line)}
.credits__ph img{inline-size:96px;aspect-ratio:1;object-fit:cover}
.credits a{display:inline-flex;align-items:center;justify-content:center;min-block-size:44px;min-inline-size:44px;color:var(--brand-ink)}
.credit-note{margin-block-end:var(--s6)}
code{font-size:.95em;background:var(--paper-2);padding:0 4px}
@media (min-width:900px){.credits{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s7)}}
.nf{padding-block:var(--s8)}
.nf__in{display:grid;gap:var(--s7);align-items:center}
.nf h1{margin-block-end:var(--s4)}
.nf .lead{margin-block-end:var(--s5)}
@media (min-width:900px){.nf__in{grid-template-columns:minmax(0,6fr) minmax(0,6fr)}}
.js .steps{display:grid}
.tform__nav [data-next]{margin-inline-start:auto}
@media (max-width:559px){.js .steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps li:nth-child(3),.steps li:nth-child(4){border-block-start:1px solid var(--line-strong)}.steps li:nth-child(3){border-inline-start:0}}
.scta{position:relative;overflow:clip}
.scta::after{content:"";position:absolute;inset:0 0 0 52%;background:url("../assets/illustrations/frame-grid.svg") right center/contain no-repeat;opacity:.3;pointer-events:none}
.scta__in{position:relative;z-index:1}
@media (max-width:899px){.scta::after{display:none}}
