/* ---------- hero ---------- */
  .page-hero{padding:80px 0 70px;}
  .page-hero h1{font-size:clamp(2.8rem,7.5vw,5.8rem);max-width:16ch;margin:24px 0 26px;}
  .page-hero h1 em{font-style:normal;background-image:linear-gradient(to top, var(--spark) 34%, transparent 34%);padding:0 .06em;}
  .page-hero .lede{font-size:clamp(1.1rem,2vw,1.35rem);max-width:52ch;font-weight:500;}

  /* ---------- service bands ---------- */
  .svc-band{border-top:3px solid var(--ink);padding:74px 0;}
  .svc-band.tint{background:#fff;}
  .svc-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:60px;align-items:start;}
  .svc-row .num{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4.4rem);color:transparent;-webkit-text-stroke:2px var(--clay);line-height:1;display:block;margin-bottom:14px;}
  .svc-row h2{font-size:clamp(1.9rem,4vw,3rem);margin-bottom:18px;max-width:20ch;}
  .svc-row .desc{font-size:1.1rem;max-width:56ch;margin-bottom:18px;font-weight:500;}
  .svc-row .body{font-size:15.5px;max-width:60ch;margin-bottom:14px;}
  .includes{border:3px solid var(--ink);background:var(--paper);box-shadow:7px 7px 0 var(--ink);padding:26px 26px 28px;}
  .svc-band.tint .includes{background:#fff;}
  .includes h3{font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;}
  .includes ul{list-style:none;}
  .includes li{padding-left:26px;position:relative;margin-bottom:10px;font-size:15px;font-weight:500;}
  .includes li::before{content:"→";position:absolute;left:0;font-weight:900;color:var(--clay);}
  .proof{margin-top:22px;border-left:8px solid var(--spark);background:var(--ink);color:var(--paper);padding:18px 22px;font-size:14.5px;}
  .proof b{color:var(--spark);font-family:var(--font-display);}
  .proof a{color:var(--spark);font-weight:700;}
  @media(max-width:880px){.svc-row{grid-template-columns:1fr;gap:30px}}

  /* ---------- process ---------- */
  .process{background:var(--forest);color:var(--paper);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);padding:96px 0;}
  .process .tag{color:var(--spark);}
  .process h2{font-size:clamp(2.2rem,5vw,3.6rem);margin:14px 0 48px;}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
  .step{border:3px solid var(--paper);padding:26px 22px 30px;position:relative;}
  .step .n{font-family:var(--font-display);font-size:2.4rem;color:var(--spark);display:block;line-height:1;margin-bottom:14px;}
  .step h3{font-size:1.25rem;margin-bottom:10px;}
  .step p{font-size:14.5px;opacity:.92;}
  @media(max-width:880px){.steps{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.steps{grid-template-columns:1fr}}

  /* ---------- certified band ---------- */
  .certified{background:var(--spark);border-bottom:4px solid var(--ink);padding:80px 0;}
  .cert-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;}
  .certified h2{font-size:clamp(1.9rem,4.4vw,3.2rem);max-width:20ch;}
  .certified p{font-size:1.05rem;font-weight:500;max-width:56ch;margin-top:18px;}
  .cert-badge{border:3px solid var(--ink);background:var(--paper);box-shadow:8px 8px 0 var(--ink);padding:30px 28px;text-align:center;}
  .cert-badge .big{font-family:var(--font-display);font-size:2rem;line-height:1.1;}
  .cert-badge .sub{font-weight:700;color:var(--moss);margin-top:10px;font-size:14.5px;}
  @media(max-width:820px){.cert-grid{grid-template-columns:1fr}}

  /* ---------- alliance promo ---------- */
  .alliance-promo{background:var(--ink);color:var(--paper);padding:80px 0;}
  .ap-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;}
  .alliance-promo .tag{color:var(--spark);}
  .alliance-promo h2{font-size:clamp(1.9rem,4.4vw,3.2rem);margin:12px 0 16px;}
  .alliance-promo h2 em{font-style:normal;color:var(--spark);}
  .alliance-promo p{font-size:1.02rem;opacity:.88;max-width:56ch;}
  @media(max-width:820px){.ap-grid{grid-template-columns:1fr;gap:26px}}

  
