/* Hammer & Pixel, blog.
   Loaded after style.css on blog/index.html and blog/<slug>/index.html.
   Everything here is scoped to body.blog so it cannot touch another page.
   Warm off white ground, compact dark header band, Inter throughout.
   British English. No long dashes in this file. */

body.blog{
  --ground:#f3f3f1;
  --ground-2:#eceae6;
  --card:#fcfcfb;
  --b-ink:#181818;
  --b-ink-2:#4f4d49;
  --b-ink-3:#67635d;
  --b-hair:rgba(24,24,24,.12);
  --b-hair-soft:rgba(24,24,24,.07);
  --b-accent-text:#8a5200;          /* yellow family, dark enough for AA on paper */
  --b-accent-soft:rgba(245,200,66,.18);
  --b-r:14px;
  background:var(--ground);
  color:var(--b-ink);
}
body.blog a{color:inherit}
body.blog a:focus-visible,body.blog button:focus-visible{outline:2px solid var(--b-accent-text);outline-offset:3px}

/* ---------- light fixed nav ---------- */
body.blog .nav{
  background:linear-gradient(to bottom,rgba(243,243,241,.94),rgba(243,243,241,.72));
  color:var(--b-ink);
}
body.blog .nav.scrolled{
  background:rgba(252,252,251,.94);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--b-hair-soft);
}
body.blog .brand{color:var(--b-ink)}
body.blog .nav-links a{color:var(--b-ink-2)}
body.blog .nav-links a:hover{color:var(--b-ink)}
body.blog .nav-links a[aria-current="page"]{color:var(--b-ink);font-weight:700}
body.blog .nav-toggle span{background:var(--b-ink)}
body.blog .nav .pill-contact{background:var(--accent);color:#141004;border-color:transparent}
body.blog .nav .pill-contact:hover{background:var(--accent-deep)}
body.blog .nav .pill-contact .arrow{background:#141004;color:var(--accent)}
/* the full screen menu stays dark, so keep its own colours */
body.blog .menu{color:var(--ink)}
body.blog .menu a:focus-visible,body.blog .menu button:focus-visible{outline-color:var(--accent)}

/* ---------- compact dark header band ---------- */
body.blog .bhead{
  background:var(--page);
  color:var(--ink);
  padding-block:clamp(5.6rem,12vh,7.2rem) clamp(2rem,5vh,2.8rem);
  border-bottom:1px solid rgba(255,255,255,.08);
}
body.blog .bhead .shell{max-width:920px}
body.blog .bhead .eyebrow-pill{
  display:inline-flex;align-items:center;gap:.55rem;
  font-size:.74rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;
  color:#f1f1f1;background:rgba(255,255,255,.06);
  border:1px solid var(--hair);border-radius:999px;padding:.44rem .9rem;
}
body.blog .bhead .eyebrow-pill .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}
body.blog .bhead h1{
  margin-top:1rem;
  font-size:clamp(30px,4.6vw,54px);
  font-weight:800;letter-spacing:-.03em;line-height:1.06;
  max-width:20ch;
}
body.blog .bhead h1 .acc{color:var(--accent)}
body.blog .bhead .bhead-line{
  margin-top:.9rem;max-width:58ch;color:#e2e2e2;
  font-size:clamp(1rem,.96rem + .3vw,1.12rem);line-height:1.55;
}
body.blog .bmeta{
  display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .9rem;
  margin-top:1.2rem;font-size:.84rem;color:#b9b9b9;
}
body.blog .bmeta span{display:inline-flex;align-items:center;gap:.5rem}
body.blog .bmeta .sep{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.35);flex:none}
body.blog .bhead a{color:var(--accent);font-weight:640}
body.blog .bhead a:focus-visible{outline-color:var(--accent)}

/* ---------- article body ---------- */
body.blog .bbody{background:var(--ground);padding-block:clamp(2.2rem,6vh,3.4rem) clamp(2.8rem,8vh,4.5rem)}
body.blog .bbody .shell{max-width:920px}
body.blog .bwrap{max-width:66ch}
body.blog .bwrap > * + *{margin-top:1.05rem}
body.blog .bwrap .lede{
  font-size:clamp(1.05rem,1rem + .4vw,1.2rem);line-height:1.55;color:var(--b-ink-2);
}
body.blog .bwrap p{color:var(--b-ink-2);line-height:1.62}
body.blog .bwrap h2{
  margin-top:2.3rem;
  font-size:clamp(1.35rem,1.15rem + 1.1vw,1.85rem);
  font-weight:800;letter-spacing:-.025em;line-height:1.14;color:var(--b-ink);
}
body.blog .bwrap h3{
  margin-top:1.6rem;
  font-size:clamp(1.05rem,1rem + .45vw,1.22rem);
  font-weight:750;letter-spacing:-.015em;line-height:1.25;color:var(--b-ink);
}
body.blog .bwrap strong{color:var(--b-ink);font-weight:700}
body.blog .bwrap a{color:var(--b-accent-text);font-weight:640;border-bottom:1px solid var(--b-accent-soft)}
body.blog .bwrap a:hover{border-bottom-color:var(--b-accent-text)}
body.blog .bwrap ul.blist{display:grid;gap:.7rem;margin-top:1rem}
body.blog .bwrap ul.blist li{
  display:flex;gap:.7rem;align-items:flex-start;
  color:var(--b-ink-2);line-height:1.58;
}
body.blog .bwrap ul.blist li::before{
  content:"";width:7px;height:7px;border-radius:50%;flex:none;margin-top:.62rem;
  background:var(--b-accent-text);
}
body.blog .bwrap ol.bsteps{display:grid;gap:.75rem;margin-top:1rem;counter-reset:s}
body.blog .bwrap ol.bsteps li{
  display:flex;gap:.75rem;align-items:flex-start;color:var(--b-ink-2);line-height:1.58;
  counter-increment:s;
}
body.blog .bwrap ol.bsteps li::before{
  content:counter(s);
  width:24px;height:24px;border-radius:50%;flex:none;margin-top:.1rem;
  display:grid;place-items:center;
  background:var(--b-accent-soft);color:var(--b-accent-text);
  font-size:.78rem;font-weight:750;
}

/* ---------- pull box with a checklist ---------- */
body.blog .bbox{
  margin-top:2rem;
  background:var(--card);border:1px solid var(--b-hair);border-left:3px solid var(--accent);
  border-radius:var(--b-r);
  padding:1.3rem 1.3rem 1.45rem;
}
body.blog .bbox .bbox-k{
  font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--b-accent-text);
}
body.blog .bbox h2,body.blog .bbox h3{margin-top:.55rem;font-size:clamp(1.08rem,1rem + .5vw,1.28rem);font-weight:750;letter-spacing:-.02em}
body.blog .bbox ul{display:grid;gap:.7rem;margin-top:1rem}
body.blog .bbox li{display:flex;gap:.7rem;align-items:flex-start;color:var(--b-ink-2);line-height:1.55;font-size:.97rem}
body.blog .bbox li svg{width:19px;height:19px;flex:none;margin-top:.15rem;color:var(--b-accent-text)}

/* ---------- related trade link ---------- */
body.blog .brelated{
  display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;
  margin-top:2rem;padding:1.05rem 1.2rem;
  background:var(--ground-2);border:1px solid var(--b-hair-soft);border-radius:var(--b-r);
}
body.blog .brelated .k{
  font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--b-ink-3);
}
body.blog .brelated a{
  color:var(--b-accent-text);font-weight:700;font-size:1rem;
  display:inline-flex;align-items:center;min-height:30px;
}
body.blog .brelated a:hover{text-decoration:underline}

/* ---------- closing CTA ---------- */
body.blog .bcta{
  background:var(--page);color:var(--ink);
  padding-block:clamp(2.6rem,8vh,4.2rem);text-align:center;
}
body.blog .bcta .shell{max-width:920px}
body.blog .bcta h2{
  font-size:clamp(1.4rem,1.2rem + 1.4vw,2.1rem);font-weight:800;letter-spacing:-.03em;
  line-height:1.12;max-width:24ch;margin-inline:auto;
}
body.blog .bcta p{margin-top:.9rem;color:var(--muted);max-width:52ch;margin-inline:auto;line-height:1.6}
body.blog .bcta .btn-row{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}
body.blog .bbtn{
  display:inline-flex;align-items:center;gap:.55rem;min-height:46px;
  font:650 1rem/1 var(--font);padding:.85rem 1.35rem;border-radius:999px;
  border:1px solid transparent;white-space:nowrap;
  transition:background .2s,color .2s,border-color .2s,transform .2s var(--ease);
}
body.blog .bbtn:active{transform:scale(.98)}
body.blog .bbtn svg{width:18px;height:18px;flex:none}
body.blog .bbtn-accent{background:var(--accent);color:#141004}
body.blog .bbtn-accent:hover{background:var(--accent-deep)}
body.blog .bbtn-ghost{background:transparent;color:var(--ink);border-color:var(--hair)}
body.blog .bbtn-ghost:hover{border-color:rgba(255,255,255,.45)}
body.blog .bcta .micro{margin-top:1.1rem;font-size:.88rem;color:var(--muted)}

/* keep the footer on the same measure as the article */
body.blog .foot .shell{max-width:920px}

/* ---------- hub ---------- */
body.blog .bgrid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.1rem;margin-top:1.8rem;
}
body.blog .bcard{
  background:var(--card);border:1px solid var(--b-hair);border-radius:var(--b-r);
  padding:1.3rem 1.3rem 1.4rem;
  display:flex;flex-direction:column;gap:.55rem;
  transition:border-color .2s,transform .2s var(--ease);
}
body.blog .bcard:hover{border-color:var(--b-ink);transform:translateY(-2px)}
body.blog .bcard .k{
  font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--b-accent-text);
}
body.blog .bcard h2{font-size:clamp(1.12rem,1.05rem + .5vw,1.35rem);font-weight:780;letter-spacing:-.02em;line-height:1.2}
body.blog .bcard p{font-size:.95rem;color:var(--b-ink-2);line-height:1.55}
body.blog .bcard .foot-line{
  margin-top:auto;padding-top:.7rem;display:flex;flex-wrap:wrap;gap:.5rem .8rem;
  font-size:.83rem;color:var(--b-ink-3);
}
body.blog .bcard .go{color:var(--b-accent-text);font-weight:700;font-size:.93rem;margin-top:.4rem}

body.blog .bintro{max-width:62ch;margin-top:1rem;color:var(--b-ink-2);line-height:1.62}

/* ---------- responsive ---------- */
@media (max-width:860px){
  body.blog .bgrid{grid-template-columns:1fr}
}
@media (max-width:700px){
  body.blog .nav .pill-contact{display:inline-flex;padding:.6rem .6rem .6rem .95rem;font-size:.9rem}
  body.blog .bhead{padding-block:5.2rem 2rem}
  body.blog .bhead h1{max-width:none}
  body.blog .bcta .btn-row .bbtn{flex:1 1 100%;justify-content:center}
  body.blog .bbox{padding:1.1rem 1.05rem 1.2rem}
}

/* The header screenshot beside the words. Added with the image wiring,
   15 September 2026. */
.blog .phead-two{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1.8rem;align-items:center}
.blog .phead-words{min-width:0}
.blog .phead-shot{margin:0;border-radius:14px;overflow:hidden;background:#111;
  border:1px solid rgba(255,255,255,.14);box-shadow:0 16px 40px rgba(0,0,0,.34)}
.blog .phead-shot img{display:block;width:100%;height:auto}
@media (max-width:860px){
  .blog .phead-two{grid-template-columns:1fr;gap:1.1rem}
  .blog .phead-shot{max-width:28rem}
}
