/* ScrubRep shared stylesheet (services + blog pages)
   Mirrors the design system in index.html. Borderless, editorial, divider lines.
   Rules: no boxes/cards, never use the em dash, text uses full width. */

:root{
  --bg:#fbfaf8;
  --bg-2:#f4f2ec;
  --line:#e6e3db;
  --line-strong:#d8d4ca;
  --text:#1b1b19;
  --muted:#6b695f;
  --accent:#1c7a63;
  --accent-deep:#155e4c;
  --accent-soft:#eaf3ef;
  --max:1180px;
  --s-1:5px; --s-2:8px; --s-3:13px; --s-4:21px;
  --s-5:34px; --s-6:55px; --s-7:89px; --s-8:144px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
  font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
strong{color:var(--text);font-weight:600}
.serif{font-family:Georgia,"Times New Roman",serif;font-weight:600}

.wrap{max-width:var(--max);margin:0 auto;padding-left:40px;padding-right:40px}
@media(max-width:640px){.wrap{padding-left:22px;padding-right:22px}}

.eyebrow{
  display:block;color:var(--accent);font-size:.76rem;font-weight:700;
  letter-spacing:2.4px;text-transform:uppercase;margin-bottom:var(--s-3);
}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:30;background:rgba(251,250,248,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.2rem;letter-spacing:-.3px;color:var(--text)}
.logo:hover{text-decoration:none}
.logo b{color:var(--accent)}
header nav a{color:var(--muted);font-size:.92rem;margin-left:var(--s-5)}
header nav a:hover{color:var(--text);text-decoration:none}
@media(max-width:820px){header nav a{margin-left:var(--s-4)}}
@media(max-width:620px){
  .bar{flex-wrap:wrap;height:auto;padding-top:13px;padding-bottom:13px;row-gap:10px}
  header nav{width:100%;display:flex;flex-wrap:wrap;gap:7px 18px}
  header nav a{margin-left:0;font-size:.9rem}
}

/* ---------- section rhythm ---------- */
.section{padding-top:var(--s-7);padding-bottom:var(--s-7)}
.section-head{margin-bottom:var(--s-6)}
.section-head h2{font-size:clamp(1.9rem,3.2vw,2.5rem);line-height:1.12;letter-spacing:-.6px}
.section-head .lead{color:var(--muted);margin-top:var(--s-3);font-size:1.06rem}

/* ---------- breadcrumb ---------- */
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-top:var(--s-5);font-size:.86rem;line-height:1.4;color:var(--muted)}
.crumb a,.crumb span{margin:0}
.crumb a{color:var(--muted)}
.crumb a:hover{color:var(--text)}
.crumb .sep{color:var(--line-strong)}
.crumb .here{color:var(--text)}

/* ---------- page hero (interior pages) ---------- */
.phero{padding:var(--s-6) 0 var(--s-6)}
.phero h1{font-size:clamp(2.2rem,4.4vw,3.3rem);line-height:1.08;letter-spacing:-1.1px}
.phero .lead{color:var(--muted);font-size:1.18rem;line-height:1.6;margin-top:var(--s-4)}
.phero .cta{margin-top:var(--s-5);display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap}

.btn{
  display:inline-block;background:var(--accent);color:#fff;padding:15px 32px;border-radius:10px;
  font-weight:600;font-size:1rem;transition:background .15s ease,transform .15s ease;
}
.btn:hover{background:var(--accent-deep);text-decoration:none;transform:translateY(-1px)}
.btn-ghost{display:inline-block;color:var(--accent);font-weight:600;font-size:1rem}
.cta .note{color:var(--muted);font-size:.92rem}

/* ---------- article prose (blog) ---------- */
.prose{max-width:var(--max)}
.prose h2{font-family:Georgia,"Times New Roman",serif;font-weight:600;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.2;letter-spacing:-.4px;margin-top:var(--s-6);margin-bottom:var(--s-3)}
.prose h3{font-size:1.22rem;font-weight:600;letter-spacing:-.2px;margin-top:var(--s-5);margin-bottom:var(--s-2)}
.prose p{margin-top:var(--s-3);color:#2a2a26}
.prose ul,.prose ol{margin-top:var(--s-3);padding-left:var(--s-4)}
.prose li{margin-top:var(--s-2);color:#2a2a26}
.prose li::marker{color:var(--accent)}
.prose strong{color:var(--text)}
.meta{color:var(--muted);font-size:.9rem;margin-top:var(--s-3)}
.meta span{margin:0 6px;color:var(--line-strong)}

/* ---------- editorial list (shared with index) ---------- */
.list{border-top:1px solid var(--line-strong)}
.row{
  display:grid;grid-template-columns:0.92fr 1.18fr;gap:var(--s-6);
  padding:var(--s-5) 0;border-bottom:1px solid var(--line);
  align-items:baseline;transition:padding-left .2s ease;
}
.row:hover{padding-left:10px}
.row .row-l{display:flex;gap:var(--s-4);align-items:baseline}
.row .n{color:var(--accent);font-weight:700;font-size:.82rem;letter-spacing:1px;font-variant-numeric:tabular-nums;flex:none;padding-top:3px}
.row h3{font-size:1.32rem;font-weight:600;letter-spacing:-.3px;line-height:1.25}
.row h3 a{color:var(--text)}
.row h3 a:hover{color:var(--accent);text-decoration:none}
.row p{color:var(--muted);font-size:1rem}
@media(max-width:740px){
  .row{grid-template-columns:1fr;gap:var(--s-2);padding:var(--s-4) 0}
  .row:hover{padding-left:0}
}
.row.qa h3{font-size:1.16rem}

/* ---------- related links block (borderless) ---------- */
.related{border-top:1px solid var(--line-strong);margin-top:var(--s-6);padding-top:var(--s-5)}
.related .eyebrow{margin-bottom:var(--s-4)}
.related ul{list-style:none;padding:0}
.related li{padding:var(--s-3) 0;border-bottom:1px solid var(--line)}
.related li a{font-weight:600;font-size:1.08rem;color:var(--text)}
.related li a:hover{color:var(--accent);text-decoration:none}
.related li p{color:var(--muted);font-size:.95rem;margin-top:3px}

/* ---------- CTA band (reuse contact colours, no card) ---------- */
.cta-band{background:var(--accent);color:#fff}
.cta-band .eyebrow{color:#bfe6d8}
.cta-band h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.14;letter-spacing:-.5px}
.cta-band p{color:#d8ece4;margin-top:var(--s-3);font-size:1.06rem}
.cta-band .btn{background:#fff;color:var(--accent-deep);margin-top:var(--s-5)}
.cta-band .btn:hover{background:#eafaf4}
.cta-band .note{color:#cfe7dd;font-size:.92rem;margin-top:var(--s-3)}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--line)}
.foot{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4);padding:var(--s-6) 0}
.foot .logo{font-size:1.1rem}
.foot .disc{line-height:1.6;color:var(--muted);font-size:.82rem;max-width:none}
.foot .copy{color:var(--muted);font-size:.82rem;width:100%;border-top:1px solid var(--line);padding-top:var(--s-4);margin-top:var(--s-1)}

/* ---------- footer link row ---------- */
.foot-links{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-5);width:100%}
.foot-links a{color:var(--muted);font-size:.86rem}
.foot-links a:hover{color:var(--text);text-decoration:none}
