/* ==========================================================================
   Peak Hire Services — Utility pages (Privacy, Terms, 404)
   Readable, not decorative. One measure column, an inline jump index, and the
   locked type system doing the work.
   ========================================================================== */

/* --- Compact utility hero ------------------------------------------------ */
.util-hero{
  background:var(--midnight); color:var(--fg-dark); position:relative; overflow:hidden;
  padding-block:calc(var(--header-h) + clamp(40px,5vw,72px)) clamp(36px,4.5vw,60px);
}
.util-hero__inner{ position:relative; z-index:1; max-width:760px; }
.util-hero__title{ color:#F3F5F8; margin-top:var(--s4); }
.util-hero__meta{
  margin-top:var(--s5); font-size:12px; font-weight:600; letter-spacing:.14em;
  text-transform:uppercase; color:var(--gold-light);
}

/* --- Jump index ---------------------------------------------------------- */
.jump{
  padding-block:var(--s5); border-bottom:1px solid var(--rule);
  display:flex; flex-wrap:wrap; gap:var(--s3) var(--s5); align-items:baseline;
}
.jump__label{ flex:0 0 auto; }
.jump__list{ display:flex; flex-wrap:wrap; gap:var(--s3) var(--s5); }
.jump__list a{
  font-size:13.5px; color:var(--fg-body); line-height:1.5;
  text-underline-offset:3px; padding-block:2px;
}
.jump__list a:hover{ color:var(--fg); text-decoration:underline; }

/* --- Policy prose -------------------------------------------------------- */
.legal{ max-width:70ch; }
.legal__intro{ font-size:var(--t-lead); line-height:1.62; color:var(--fg-body); }
.legal__section{ margin-top:clamp(36px,4vw,56px); scroll-margin-top:calc(var(--header-h) + 24px); }
.legal__section h2{
  font-family:var(--serif); font-weight:400; font-size:clamp(22px,1.1rem + .95vw,29px);
  line-height:1.16; letter-spacing:-.02em; color:var(--fg);
  padding-bottom:var(--s3); border-bottom:1px solid var(--rule);
}
.legal__section > p{ margin-top:var(--s4); font-size:16px; line-height:1.72; color:var(--fg-body); }
.legal__section h3{
  margin-top:var(--s5); font-size:15px; font-weight:650; color:var(--fg); letter-spacing:-.004em;
}
.legal__section ul{ margin-top:var(--s4); display:flex; flex-direction:column; gap:10px; }
.legal__section li{ display:flex; gap:11px; font-size:15.5px; color:var(--fg-body); line-height:1.6; }
.legal__section a{ color:var(--blue); text-decoration:underline; text-underline-offset:3px; }

.legal__note{
  margin-top:var(--s5); padding:var(--s5); border-left:2px solid var(--gold);
  background:var(--ivory); border-radius:0 var(--radius) var(--radius) 0;
}
.legal__note p{ font-size:15px; line-height:1.62; color:var(--fg-body); }

.legal__contact{
  margin-top:clamp(40px,5vw,64px); padding-top:var(--s6); border-top:1px solid var(--rule);
}
.legal__contact p{ font-size:15.5px; color:var(--fg-body); line-height:1.7; }
.legal__contact a{ color:var(--blue); text-decoration:underline; text-underline-offset:3px; }

/* --- 404 ----------------------------------------------------------------- */
.notfound{
  background:var(--midnight); color:var(--fg-dark);
  position:relative; overflow:hidden;
  min-height:clamp(420px,62vh,620px);
  display:flex; align-items:center;
  padding-block:calc(var(--header-h) + clamp(48px,6vw,88px)) clamp(48px,6vw,88px);
}
.notfound__inner{ position:relative; z-index:1; max-width:640px; }
.notfound__code{
  font-family:var(--serif); font-weight:400; font-size:clamp(44px,2rem + 3.4vw,76px);
  line-height:1; letter-spacing:-.03em; color:var(--gold); opacity:.85;
}
.notfound__title{ color:#F3F5F8; margin-top:var(--s5); max-width:16ch; }
.notfound__lead{ margin-top:var(--s5); max-width:50ch; color:#9FADBB; font-size:var(--t-lead); line-height:1.62; }
.notfound__actions{ margin-top:var(--s7); }
.notfound__links{
  margin-top:var(--s6); padding-top:var(--s5); border-top:1px solid var(--rule-dark);
  display:flex; flex-wrap:wrap; gap:var(--s3) var(--s6);
}
.notfound__links a{
  font-size:14.5px; color:var(--fg-dark-soft); padding-block:3px;
  text-underline-offset:3px;
}
.notfound__links a:hover{ color:var(--gold-light); text-decoration:underline; }
