/*
Theme Name: Ghosthawk Pre-launch
Theme URI: https://ghosthawk.co.uk/
Author: Ghosthawk / North West Support Group Ltd
Description: A custom WordPress theme for Ghosthawk, covering Asset Operations and Investigation & Intelligence.
Version: 2.2.40
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: ghosthawk
*/
:root {
  --ink: #070c11;
  --ink-2: #0d151d;
  --navy: #111d28;
  --navy-2: #162635;
  --panel: #182431;
  --text: #f1f4f5;
  --muted: #aab6bf;
  --muted-2: #7f8d97;
  --accent: #c9a15b;
  --accent-2: #e3bf78;
  --accent-soft: rgba(201,161,91,.12);
  --line: rgba(255,255,255,.10);
  --line-strong: rgba(255,255,255,.18);
  --max: 1280px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 82% -8%, rgba(45,77,102,.38) 0, rgba(12,21,29,0) 34%),
    linear-gradient(180deg, #0b1219 0, var(--ink) 46%, #060a0e 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  opacity: .20;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 75%);
}

a { color: var(--accent-2); text-decoration: none; }
a:hover { text-decoration: none; color: #f1d69e; }
img { max-width: 100%; height: auto; }
.container { width: min(var(--max), calc(100% - 56px)); margin: 0 auto; }
.site-main { min-height: 55vh; overflow: hidden; }

/* Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid var(--line);
  background: rgba(5,10,14,.94);
  backdrop-filter: blur(16px);
}
.nav-wrap {
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
}
.brand { color: var(--text); flex: 0 0 auto; }
.brand:hover { color: var(--text); }
.brand img { width: 218px !important; max-width: 42vw !important; }
.wordmark { display:block; font-size:1rem; font-weight:800; letter-spacing:.18em; }
.tagline {
  display: block;
  margin-top: 2px;
  color: #9caab4;
  font-size: .69rem;
  letter-spacing: .055em;
}
.site-navigation { margin-left: auto; }
.primary-menu {
  display: flex;
  list-style: none;
  gap: clamp(13px, 1.4vw, 22px);
  padding: 0;
  margin: 0;
  align-items: center;
  white-space: nowrap;
}
.primary-menu li { margin: 0; }
.primary-menu a {
  position: relative;
  display: block;
  padding: 34px 0 31px;
  color: #d7dfe4;
  font-size: clamp(.78rem, .78vw, .91rem);
  font-weight: 550;
}
.primary-menu a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 21px;
  height: 2px;
  background: var(--accent);
  transition: right .2s ease;
}
.primary-menu a:hover::after,
.primary-menu .current-menu-item > a::after,
.primary-menu .current_page_item > a::after { right: 0; }
.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a { color: var(--accent-2); }
.menu-toggle {
  display: none;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.02);
  color: var(--text);
  padding: 10px 13px;
  border-radius: 2px;
  font: inherit;
}

/* Typography */
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--accent-2);
  letter-spacing: .20em;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 800;
}
.eyebrow::before { content:""; width:32px; height:1px; background:var(--accent); flex:0 0 32px; }
h1, h2, h3 { text-wrap: balance; }
h1 {
  font-size: clamp(3.35rem, 6.6vw, 6.65rem);
  line-height: .94;
  letter-spacing: -.058em;
  margin: 22px 0 28px;
  max-width: 1080px;
  font-weight: 800;
}
h1 .accent { color: var(--accent-2); }
h2 {
  font-size: clamp(2.25rem, 4.5vw, 4.55rem);
  line-height: 1.00;
  letter-spacing: -.045em;
  margin: 12px 0 22px;
  font-weight: 760;
}
h3 { font-size: clamp(1.22rem, 1.8vw, 1.6rem); line-height:1.15; margin:0 0 12px; }
p { margin: 0 0 18px; }
.lede {
  font-size: clamp(1.08rem, 1.55vw, 1.34rem);
  max-width: 820px;
  color: #c7d1d7;
  line-height: 1.62;
}
.muted { color: var(--muted); }

/* Buttons */
.hero-actions, .page-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:34px; }
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 22px;
  border:1px solid var(--accent);
  border-radius:2px;
  background:var(--accent);
  color:#0b1116;
  font-weight:800;
  letter-spacing:.005em;
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.button:hover { color:#071016; background:var(--accent-2); transform:translateY(-1px); }
.button.secondary { background:transparent; color:var(--text); border-color:rgba(255,255,255,.27); box-shadow:none; }
.button.secondary:hover { color:var(--accent-2); border-color:var(--accent); }

/* Cinematic home hero */
.hero {
  position: relative;
  padding: clamp(92px, 9vw, 138px) 0 clamp(92px, 9vw, 132px);
  border-bottom:1px solid var(--line);
  isolation:isolate;
}
.hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 78% 34%, rgba(201,161,91,.12), transparent 18%),
    radial-gradient(circle at 88% 42%, rgba(57,95,122,.24), transparent 31%),
    linear-gradient(108deg, rgba(7,12,17,.98) 0%, rgba(8,14,20,.92) 54%, rgba(12,24,33,.74) 100%);
}
.hero::after {
  content:"";
  position:absolute;
  right:-8vw;
  top:0;
  width:58vw;
  height:100%;
  z-index:-1;
  opacity:.38;
  background:
    repeating-radial-gradient(ellipse at 65% 52%, transparent 0 44px, rgba(224,189,120,.12) 45px 46px, transparent 47px 87px),
    linear-gradient(125deg, transparent 0 42%, rgba(255,255,255,.035) 42% 42.5%, transparent 42.5% 100%);
  transform:skewX(-7deg);
}
.hero-home .container { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:68px; align-items:end; }
.hero-home h1 { margin-bottom:26px; }
.hero-copy { position:relative; z-index:2; }
.signal-board {
  align-self: stretch;
  min-height: 360px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding: 0 0 8px 34px;
  border-left:1px solid rgba(201,161,91,.42);
  position:relative;
}
.signal-board::before {
  content:"GH / 01";
  position:absolute;
  top:2px;
  left:34px;
  color:var(--accent);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.18em;
}
.signal-line {
  padding:16px 0;
  border-top:1px solid var(--line);
  color:#dbe3e7;
  font-size:clamp(1.05rem,1.45vw,1.35rem);
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.signal-line span { display:block; margin-bottom:5px; color:var(--muted-2); font-size:.64rem; letter-spacing:.18em; }
.signal-line:last-child { color:var(--accent-2); border-bottom:1px solid var(--line); }

/* General sections */
section { position:relative; padding: clamp(76px, 7vw, 112px) 0; }
.section-dark {
  background: linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.008));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.section-heading { max-width:840px; margin-bottom:48px; }
.section-heading p { max-width:760px; }

/* Division feature: intentionally not cards */
.division-stage { padding-top:clamp(84px,8vw,126px); padding-bottom:clamp(84px,8vw,126px); }
.division-intro { display:grid; grid-template-columns:.72fr 1.28fr; gap:72px; align-items:end; margin-bottom:52px; }
.division-intro h2 { margin-bottom:0; }
.division-intro .intro-copy { color:var(--muted); max-width:600px; }
.division-panels { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.division-panel {
  position:relative;
  min-height:500px;
  padding:48px 50px 42px;
  overflow:hidden;
  background:linear-gradient(145deg, rgba(20,35,47,.82), rgba(8,14,19,.86));
}
.division-panel + .division-panel { border-left:1px solid var(--line-strong); }
.division-panel::before {
  content:attr(data-index);
  position:absolute;
  right:-4px;
  top:-52px;
  color:rgba(255,255,255,.035);
  font-size:15rem;
  font-weight:900;
  line-height:1;
  letter-spacing:-.10em;
}
.division-panel--asset { background:linear-gradient(145deg, rgba(31,48,62,.94), rgba(10,17,23,.93)); }
.division-panel--intel { background:linear-gradient(145deg, rgba(15,28,38,.96), rgba(7,12,17,.96)); }
.division-kicker { color:var(--accent-2); font-size:.72rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.division-panel h3 { max-width:580px; margin:64px 0 18px; font-size:clamp(2rem,3.2vw,3.55rem); letter-spacing:-.04em; }
.division-panel > p { max-width:560px; color:#c3ced5; font-size:1.04rem; }
.capability-run { list-style:none; padding:0; margin:36px 0 34px; border-top:1px solid var(--line); }
.capability-run li { display:flex; justify-content:space-between; gap:22px; padding:11px 0; border-bottom:1px solid var(--line); color:#d5dde2; font-size:.9rem; }
.capability-run li::after { content:"↗"; color:var(--accent); }
.service-link { display:inline-block; margin-top:8px; color:var(--accent-2); font-weight:750; }

/* Brand statement */
.brand-statement { padding:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#070c11; }
.brand-statement .container { display:grid; grid-template-columns:.55fr 1.45fr; align-items:stretch; min-height:380px; }
.statement-label { padding:54px 42px 54px 0; border-right:1px solid var(--line); color:var(--accent); font-size:.7rem; font-weight:800; letter-spacing:.22em; text-transform:uppercase; }
.statement-copy { display:flex; align-items:center; padding:64px 0 64px 64px; font-size:clamp(2.2rem,4.55vw,5rem); line-height:1.02; letter-spacing:-.045em; font-weight:760; }
.statement-copy strong { color:var(--accent-2); font-weight:800; }

/* Process line */
.process-section { overflow:hidden; }
.process-head { display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; align-items:end; margin-bottom:52px; }
.process-track { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.process-step { position:relative; padding:38px 30px 40px 0; min-height:230px; }
.process-step + .process-step { padding-left:30px; border-left:1px solid var(--line); }
.process-step .step-no { color:var(--accent); font-size:.72rem; font-weight:800; letter-spacing:.18em; }
.process-step h3 { margin-top:58px; }
.process-step p { color:var(--muted); font-size:.92rem; }

/* Market rail */
.market-section { padding-top:86px; background:linear-gradient(180deg,rgba(21,35,46,.38),rgba(8,13,18,.15)); border-top:1px solid var(--line); }
.market-head { display:flex; justify-content:space-between; gap:40px; align-items:flex-end; margin-bottom:34px; }
.market-head h2 { max-width:760px; margin-bottom:0; }
.market-rail { display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); }
.market-item { min-height:170px; padding:28px 18px 24px 0; border-bottom:1px solid var(--line); }
.market-item + .market-item { padding-left:18px; border-left:1px solid var(--line); }
.market-item span { display:block; color:var(--accent); font-size:.66rem; letter-spacing:.16em; font-weight:800; margin-bottom:42px; }
.market-item strong { display:block; color:#e3e9ec; font-size:.92rem; line-height:1.3; }

/* Large CTA / partnership */
.cta-band { padding:0; background:linear-gradient(100deg,rgba(201,161,91,.10),rgba(201,161,91,.025) 55%,transparent); border-top:1px solid rgba(201,161,91,.28); border-bottom:1px solid rgba(201,161,91,.18); }
.cta-band .container { display:grid; grid-template-columns:1.3fr .7fr; gap:60px; align-items:center; min-height:320px; }
.cta-band h2 { max-width:760px; }
.cta-box { padding:34px 0 34px 38px; border-left:1px solid rgba(201,161,91,.35); }
.contact-label { color:var(--muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.14em; }
.contact-value { font-size:1.24rem; font-weight:750; margin:8px 0 18px; }

/* Page hero */
.page-hero {
  position:relative;
  padding:clamp(76px,7vw,112px) 0 clamp(66px,6vw,92px);
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 88% 38%, rgba(201,161,91,.08), transparent 18%),
    linear-gradient(112deg, rgba(7,12,17,.98), rgba(15,27,37,.90));
  overflow:hidden;
}
.page-hero::after {
  content:"";
  position:absolute;
  right:-120px; top:-210px;
  width:660px; height:660px;
  border:1px solid rgba(201,161,91,.15);
  border-radius:50%;
  box-shadow:0 0 0 82px rgba(201,161,91,.025),0 0 0 164px rgba(255,255,255,.018);
}
.page-hero h1 { position:relative; z-index:1; font-size:clamp(2.8rem,5.6vw,5.65rem); max-width:1000px; }
.page-hero .lede { position:relative; z-index:1; }

/* Service ledger: replaces generic grids on hubs */
.service-ledger { border-top:1px solid var(--line-strong); }
.ledger-row {
  display:grid;
  grid-template-columns:112px minmax(260px,.75fr) minmax(320px,1.25fr) 36px;
  gap:34px;
  align-items:center;
  min-height:174px;
  border-bottom:1px solid var(--line-strong);
  color:var(--text);
  transition:background .2s ease, padding .2s ease;
}
.ledger-row:hover { background:linear-gradient(90deg,rgba(201,161,91,.055),transparent 70%); }
.ledger-no { color:var(--accent); font-size:.75rem; font-weight:800; letter-spacing:.16em; }
.ledger-row h3 { margin:0; font-size:clamp(1.4rem,2vw,2rem); }
.ledger-row p { margin:0; color:var(--muted); font-size:.95rem; max-width:650px; }
.ledger-arrow { color:var(--accent-2); font-size:1.5rem; transition:transform .18s ease; }
.ledger-row:hover .ledger-arrow { transform:translate(4px,-4px); }

/* Method strip / asset spectrum */
.method-strip, .asset-spectrum { display:grid; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.method-strip { grid-template-columns:repeat(6,1fr); }
.asset-spectrum { grid-template-columns:repeat(3,1fr); }
.method-item, .spectrum-item { padding:28px 22px; min-height:120px; }
.method-item + .method-item, .spectrum-item + .spectrum-item { border-left:1px solid var(--line); }
.method-item span, .spectrum-item span { display:block; color:var(--accent); font-size:.65rem; font-weight:800; letter-spacing:.16em; margin-bottom:18px; }
.method-item strong, .spectrum-item strong { color:#dfe6e9; font-size:.9rem; }

/* Market mosaic */
.market-mosaic { display:grid; grid-template-columns:repeat(12,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.market-tile { position:relative; min-height:260px; padding:34px; background:linear-gradient(145deg,#13212c,#0b1218); overflow:hidden; }
.market-tile:nth-child(1), .market-tile:nth-child(6) { grid-column:span 5; }
.market-tile:nth-child(2), .market-tile:nth-child(5) { grid-column:span 3; }
.market-tile:nth-child(3), .market-tile:nth-child(4) { grid-column:span 4; }
.market-tile::after { content:attr(data-no); position:absolute; right:16px; bottom:-28px; color:rgba(255,255,255,.035); font-size:7rem; line-height:1; font-weight:900; }
.market-tile h3 { margin-top:82px; max-width:320px; }
.market-tile p { color:var(--muted); max-width:420px; font-size:.92rem; }
.market-tile .tile-kicker { color:var(--accent); font-size:.66rem; font-weight:800; letter-spacing:.16em; }

/* Existing content components restyled to feel designed, not blocky */
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:0; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.card {
  background:transparent;
  border:0;
  border-radius:0;
  padding:34px 34px 34px 0;
  min-height:100%;
}
.grid-2 > .card:nth-child(even), .grid-3 > .card + .card { padding-left:34px; border-left:1px solid var(--line); }
.grid-2 > .card:nth-child(n+3) { border-top:1px solid var(--line); }
.grid-3 > .card h3, .grid-2 > .card h3 { margin-top:40px; }
.card .number { color:var(--accent); font-size:.72rem; font-weight:800; letter-spacing:.16em; }
.card p { color:#bcc8cf; }
.split { display:grid; grid-template-columns:1.12fr .88fr; gap:72px; align-items:start; }
.callout {
  position:relative;
  padding:34px 36px;
  background:linear-gradient(145deg,rgba(201,161,91,.095),rgba(201,161,91,.025));
  border:1px solid rgba(201,161,91,.28);
  border-left:3px solid var(--accent);
}
.callout::after { content:""; position:absolute; right:12px; top:12px; width:48px; height:48px; border-top:1px solid rgba(201,161,91,.35); border-right:1px solid rgba(201,161,91,.35); }
.contact-panel { padding:34px 36px; border:1px solid rgba(201,161,91,.30); background:linear-gradient(145deg,rgba(201,161,91,.08),rgba(201,161,91,.025)); border-radius:0; }
.pill-row { display:flex; flex-wrap:wrap; gap:0; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.pill { border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.02); border-radius:0; padding:12px 15px; color:#cbd5dc; font-size:.88rem; }
.checklist { list-style:none; padding:0; margin:0; border-top:1px solid var(--line); }
.checklist li { position:relative; padding:12px 0 12px 26px; color:#cbd5dc; border-bottom:1px solid var(--line); }
.checklist li::before { content:"—"; position:absolute; left:0; color:var(--accent-2); }

/* Footer */
.site-footer { border-top:1px solid var(--line); background:#05090c; padding:50px 0 36px; color:#8f9da7; font-size:.82rem; }
.footer-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:35px; align-items:center; }
.footer-links { display:flex; gap:18px; flex-wrap:wrap; justify-content:flex-end; }
.footer-links a { color:#b8c3ca; }
.footer-legal { margin-top:24px; padding-top:22px; border-top:1px solid var(--line); max-width:1000px; }

/* WordPress integration */
.admin-bar .site-header { top:32px; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.wp-block-image img { height:auto; }
.error-page { padding:100px 0; }

@media (max-width: 1180px) {
  .admin-bar .site-header { top:32px; }
  .menu-toggle { display:inline-flex; }
  .site-navigation { display:none; position:absolute; top:92px; left:0; right:0; background:rgba(5,10,14,.99); border-bottom:1px solid var(--line); padding:18px 28px 26px; }
  .site-navigation.is-open { display:block; }
  .primary-menu { flex-direction:column; align-items:flex-start; gap:0; width:min(var(--max),calc(100% - 56px)); margin:0 auto; white-space:normal; }
  .primary-menu li { width:100%; border-bottom:1px solid var(--line); }
  .primary-menu a { padding:12px 0; font-size:.94rem; }
  .primary-menu a::after { bottom:6px; }
  .hero-home .container { grid-template-columns:1fr .55fr; gap:44px; }
  .market-rail { grid-template-columns:repeat(3,1fr); }
  .market-item:nth-child(4) { border-left:0; padding-left:0; }
  .method-strip { grid-template-columns:repeat(3,1fr); }
  .method-item:nth-child(4) { border-left:0; }
}

@media (max-width: 900px) {
  .admin-bar .site-header { top:46px; }
  .container { width:min(var(--max),calc(100% - 36px)); }
  .hero-home .container, .division-intro, .process-head, .split, .cta-band .container { grid-template-columns:1fr; }
  .hero-home { padding-top:76px; }
  .signal-board { min-height:auto; padding:44px 0 0; border-left:0; border-top:1px solid rgba(201,161,91,.35); }
  .signal-board::before { top:12px; left:0; }
  .division-panels { grid-template-columns:1fr; }
  .division-panel + .division-panel { border-left:0; border-top:1px solid var(--line-strong); }
  .division-panel { min-height:430px; padding:38px 30px; }
  .brand-statement .container { grid-template-columns:1fr; min-height:auto; }
  .statement-label { border-right:0; border-bottom:1px solid var(--line); padding:34px 0 22px; }
  .statement-copy { padding:42px 0 52px; }
  .process-track { grid-template-columns:1fr 1fr; }
  .process-step:nth-child(3) { border-left:0; border-top:1px solid var(--line); }
  .process-step:nth-child(4) { border-top:1px solid var(--line); }
  .market-mosaic { grid-template-columns:1fr 1fr; }
  .market-tile, .market-tile:nth-child(n) { grid-column:auto; }
  .ledger-row { grid-template-columns:64px 1fr 32px; gap:20px; padding:28px 0; }
  .ledger-row p { grid-column:2 / 4; padding-right:20px; }
  .asset-spectrum { grid-template-columns:1fr; }
  .spectrum-item + .spectrum-item { border-left:0; border-top:1px solid var(--line); }
  .grid-3, .grid-2 { grid-template-columns:1fr; }
  .grid-2 > .card:nth-child(even), .grid-3 > .card + .card { padding-left:0; border-left:0; border-top:1px solid var(--line); }
  .grid-2 > .card:nth-child(n+2) { border-top:1px solid var(--line); }
  .cta-box { padding-left:0; border-left:0; border-top:1px solid rgba(201,161,91,.30); }
  .footer-grid { grid-template-columns:1fr; }
  .footer-links { justify-content:flex-start; }
}

@media (max-width: 620px) {
  .container { width:min(var(--max),calc(100% - 28px)); }
  .nav-wrap { min-height:82px; }
  .brand img { width:190px !important; max-width:62vw !important; }
  .tagline { font-size:.62rem; max-width:190px; line-height:1.35; }
  .site-navigation { top:82px; padding-left:14px; padding-right:14px; }
  .primary-menu { width:100%; }
  h1 { font-size:clamp(2.7rem,14vw,4rem); }
  h2 { font-size:clamp(2rem,10vw,3rem); }
  section { padding:64px 0; }
  .hero { padding:72px 0 70px; }
  .hero::after { right:-70vw; width:140vw; opacity:.26; }
  .division-panel { min-height:0; padding:32px 22px; }
  .division-panel h3 { margin-top:48px; }
  .process-track, .market-rail, .method-strip, .market-mosaic { grid-template-columns:1fr; }
  .process-step + .process-step, .market-item + .market-item, .method-item + .method-item { border-left:0; border-top:1px solid var(--line); padding-left:0; }
  .market-item:nth-child(n) { padding-left:0; }
  .ledger-row { grid-template-columns:48px 1fr 24px; gap:12px; }
  .ledger-row p { font-size:.9rem; }
  .market-tile { min-height:230px; padding:28px 24px; }
  .statement-copy { font-size:clamp(2rem,11vw,3.2rem); }
  .page-actions, .hero-actions { flex-direction:column; align-items:stretch; }
  .button { width:100%; }
}


/* =========================================================
   Ghosthawk 1.3.0 — designed public templates
   ========================================================= */
:root {
  --asset: #d6aa60;
  --asset-soft: rgba(214,170,96,.12);
  --intel: #9eb6c8;
  --intel-soft: rgba(158,182,200,.11);
  --gh-black: #05090d;
  --gh-surface: #0a1117;
  --gh-surface-2: #0d1821;
}

/* Tighten the old generic rhythm without breaking legacy pages. */
section { padding: clamp(58px, 5.2vw, 82px) 0; }
h1 { font-size: clamp(3.05rem, 5.45vw, 5.65rem); }
h2 { font-size: clamp(2.05rem, 3.65vw, 3.65rem); }
.legacy-page section { padding: clamp(56px, 5vw, 78px) 0; }
.legacy-page .page-hero { padding-top: clamp(70px, 7vw, 100px); }

.micro-label {
  color: var(--accent-2);
  font-size: .69rem;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.text-link { display:inline-flex; gap:9px; align-items:center; color:var(--accent-2); font-weight:780; }
.text-link span { transition: transform .18s ease; }
.text-link:hover span { transform: translate(3px,-2px); }

/* Homepage — deliberately not a Gutenberg/content-stack layout. */
.home-hero { padding: 0; border-bottom:1px solid var(--line); background:var(--gh-black); }
.home-hero-top { min-height: 475px; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(220px,.45fr); gap:60px; align-items:center; padding-top:68px; padding-bottom:58px; }
.home-hero-copy h1 { margin:18px 0 24px; font-size:clamp(3.65rem,6vw,6.15rem); line-height:.92; max-width:980px; }
.home-hero-copy h1 span { color:var(--accent-2); }
.home-hero-copy p { max-width:760px; color:#c6d0d7; font-size:clamp(1.03rem,1.35vw,1.24rem); }
.home-mark { position:relative; height:260px; border-left:1px solid rgba(201,161,91,.4); display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; padding:0 0 4px 34px; overflow:hidden; }
.home-mark::before,.home-mark::after { content:""; position:absolute; border:1px solid rgba(201,161,91,.12); border-radius:50%; width:330px; height:330px; right:-160px; top:-52px; }
.home-mark::after { width:210px; height:210px; right:-100px; top:10px; }
.home-mark span { font-size:clamp(4rem,7vw,7rem); font-weight:850; letter-spacing:-.08em; color:rgba(255,255,255,.055); }
.home-mark small { color:var(--accent); letter-spacing:.18em; font-weight:800; }
.division-doors { display:grid; grid-template-columns:1fr 1fr; border-left:1px solid var(--line); border-right:1px solid var(--line); }
.division-door { min-height:505px; padding:38px 44px 34px; color:var(--text); border-top:1px solid var(--line); position:relative; overflow:hidden; display:flex; flex-direction:column; transition:background .22s ease; }
.division-door + .division-door { border-left:1px solid var(--line); }
.division-door::before { content:""; position:absolute; inset:0; opacity:.9; pointer-events:none; transition:opacity .22s ease, transform .4s ease; }
.division-door--asset { background:linear-gradient(135deg,#111c25 0%,#0a1218 70%); }
.division-door--asset::before { background:radial-gradient(circle at 88% 22%,rgba(214,170,96,.16),transparent 27%),repeating-radial-gradient(circle at 88% 22%,transparent 0 44px,rgba(214,170,96,.055) 45px 46px,transparent 47px 88px); }
.division-door--intel { background:linear-gradient(135deg,#081017 0%,#0c1821 100%); }
.division-door--intel::before { background:linear-gradient(120deg,transparent 0 55%,rgba(158,182,200,.055) 55% 55.5%,transparent 55.5% 100%),radial-gradient(circle at 84% 22%,rgba(158,182,200,.13),transparent 28%); }
.division-door:hover { color:var(--text); background-color:#101c25; }
.division-door:hover::before { opacity:1; transform:scale(1.025); }
.door-top,.door-body,.door-services,.door-link { position:relative; z-index:2; }
.door-top { display:flex; align-items:center; justify-content:space-between; gap:25px; color:var(--accent-2); text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; }
.division-door--intel .door-top { color:var(--intel); }
.door-top span { font-size:1.55rem; letter-spacing:-.03em; color:rgba(255,255,255,.25); }
.door-body { margin-top:52px; max-width:650px; }
.door-body h2 { font-size:clamp(2.2rem,3.8vw,3.8rem); margin:0 0 14px; max-width:600px; }
.door-body p { color:#b9c6ce; font-size:1.03rem; max-width:560px; }
.door-services { margin-top:30px; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.door-services span { padding:11px 12px 11px 0; font-size:.82rem; color:#c6d1d8; border-bottom:1px solid rgba(255,255,255,.075); }
.door-services span:nth-child(even) { padding-left:18px; border-left:1px solid rgba(255,255,255,.075); }
.door-services--six span { font-size:.79rem; }
.door-link { margin-top:auto; padding-top:25px; font-weight:800; color:var(--accent-2); display:flex; justify-content:space-between; }
.division-door--intel .door-link { color:var(--intel); }

.home-positioning { background:#070d12; border-bottom:1px solid var(--line); }
.positioning-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:85px; align-items:start; }
.positioning-grid h2 { margin-top:18px; }
.positioning-copy { display:grid; grid-template-columns:1fr 1fr; gap:28px 42px; padding-top:26px; }
.positioning-copy p { color:#bdc9d1; font-size:1rem; }
.positioning-copy strong { color:#fff; }
.positioning-copy .small-note { grid-column:1 / -1; border-top:1px solid var(--line); padding-top:20px; color:#8fa0ab; font-size:.86rem; }

.home-standard { background:linear-gradient(180deg,#0b141b,#070d12); border-bottom:1px solid var(--line); }
.standard-head { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; margin-bottom:34px; }
.standard-head h2 { margin:14px 0 0; max-width:720px; }
.standard-head p { color:#9cabb5; padding-bottom:7px; justify-self:end; }
.standard-strip { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); }
.standard-strip > div { min-height:190px; padding:27px 28px; border-right:1px solid var(--line); display:flex; flex-direction:column; }
.standard-strip > div:last-child { border-right:0; }
.standard-strip span { color:var(--accent); font-size:.68rem; letter-spacing:.18em; font-weight:800; }
.standard-strip strong { margin-top:30px; font-size:1.42rem; }
.standard-strip p { margin-top:8px; color:#9eacb6; font-size:.88rem; }

.home-markets { background:#081017; border-bottom:1px solid var(--line); }
.market-header { display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:30px; }
.market-header h2 { margin:14px 0 0; max-width:880px; }
.market-rail { display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.market-rail span { min-height:115px; padding:24px 18px 20px 0; border-right:1px solid var(--line); color:#d8dfe3; font-weight:650; font-size:.9rem; }
.market-rail span:not(:first-child) { padding-left:18px; }
.market-rail span:last-child { border-right:0; }

.home-partners { background:linear-gradient(105deg,#17150f 0%,#0b1116 52%,#060b0f 100%); border-bottom:1px solid rgba(201,161,91,.25); }
.partner-grid { display:grid; grid-template-columns:1.4fr .6fr; gap:70px; align-items:center; }
.partner-grid h2 { max-width:850px; margin:15px 0 18px; }
.partner-grid p { color:#aebbc4; max-width:760px; }
.partner-contact { border-left:1px solid rgba(201,161,91,.35); padding-left:38px; display:flex; flex-direction:column; gap:15px; }
.partner-contact > span { color:#aebbc4; text-transform:uppercase; letter-spacing:.15em; font-size:.72rem; }
.partner-contact > a:first-of-type { font-size:clamp(1.15rem,1.7vw,1.55rem); font-weight:800; }

/* Division hubs */
.division-hero { padding:0; border-bottom:1px solid var(--line); min-height:600px; display:flex; align-items:stretch; }
.division-hero--asset { background:linear-gradient(110deg,#101c26 0%,#070d12 62%); }
.division-hero--intel { background:linear-gradient(110deg,#071018 0%,#0b1821 70%); }
.division-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; min-height:600px; align-items:center; }
.division-hero-copy { padding:72px 70px 72px 0; }
.division-hero-copy h1 { margin:18px 0 24px; max-width:700px; }
.division-hero-copy p { max-width:650px; color:#bcc8d0; font-size:1.12rem; }
.division-hero-copy .text-link { margin-top:18px; }
.division-graphic { align-self:stretch; border-left:1px solid var(--line); position:relative; overflow:hidden; min-height:520px; }
.division-graphic svg { position:absolute; inset:8% 2% 3% 2%; width:96%; height:89%; }
.division-graphic--asset svg path { fill:none; stroke:rgba(214,170,96,.52); stroke-width:2; stroke-dasharray:7 8; }
.division-graphic--asset svg circle { fill:var(--asset); }
.asset-orbit { position:absolute; border:1px solid rgba(214,170,96,.10); border-radius:50%; left:17%; top:17%; }
.orbit-a{width:480px;height:480px}.orbit-b{width:330px;height:330px;left:31%;top:29%}.orbit-c{width:180px;height:180px;left:44%;top:41%}
.division-graphic--intel .net-lines path { fill:none; stroke:rgba(158,182,200,.28); stroke-width:1.4; }
.division-graphic--intel .net-nodes circle { fill:#0b1821; stroke:rgba(158,182,200,.7); stroke-width:2; }
.division-graphic--intel .net-nodes circle:nth-child(3),.division-graphic--intel .net-nodes circle:nth-child(5) { fill:rgba(158,182,200,.18); }

.service-index { padding:72px 0 80px; background:#070d12; border-bottom:1px solid var(--line); }
.index-intro { display:grid; grid-template-columns:.65fr 1.1fr 1fr; gap:50px; align-items:start; margin-bottom:34px; }
.index-intro h2 { margin:0; font-size:clamp(2.25rem,3.3vw,3.35rem); }
.index-intro p { color:#9eadb7; margin:4px 0 0; }
.designed-ledger { border-top:1px solid var(--line); }
.designed-ledger-row { display:grid; grid-template-columns:72px 1.05fr 1.2fr 34px; gap:24px; align-items:center; min-height:112px; border-bottom:1px solid var(--line); color:var(--text); transition:background .18s ease,padding .18s ease; }
.designed-ledger-row:hover { color:var(--text); background:rgba(255,255,255,.026); padding-left:12px; }
.service-index--asset .designed-ledger-row:hover { background:var(--asset-soft); }
.service-index--intel .designed-ledger-row:hover { background:var(--intel-soft); }
.ledger-index { color:var(--accent); font-size:.7rem; font-weight:800; letter-spacing:.16em; }
.service-index--intel .ledger-index { color:var(--intel); }
.ledger-title { font-size:clamp(1.18rem,1.6vw,1.5rem); font-weight:760; }
.ledger-desc { color:#9eadb7; font-size:.9rem; }
.ledger-go { font-size:1.1rem; color:var(--accent); }
.division-principles { padding:72px 0; }
.division-principles--asset { background:linear-gradient(110deg,#131a1d,#080e12); }
.division-principles--intel { background:linear-gradient(110deg,#091218,#0d1820); }
.principles-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.principle-lines { border-top:1px solid var(--line); }
.principle-lines > div { display:grid; grid-template-columns:56px 1fr; gap:18px; padding:20px 0; border-bottom:1px solid var(--line); }
.principle-lines span { color:var(--accent); font-size:.68rem; letter-spacing:.16em; }
.principle-lines strong { font-size:1.02rem; }

/* Service pages */
.service-hero { padding:0; background:#060c11; border-bottom:1px solid var(--line); }
.service-hero-grid { min-height:500px; display:grid; grid-template-columns:1.25fr .75fr; border-left:1px solid var(--line); border-right:1px solid var(--line); }
.service-hero-copy { padding:64px 56px 58px; position:relative; overflow:hidden; }
.service-hero-side { padding:64px 48px; border-left:1px solid var(--line); display:flex; flex-direction:column; justify-content:flex-end; background:rgba(255,255,255,.012); }
.service-page--asset .service-hero-copy { background:radial-gradient(circle at 92% 10%,rgba(214,170,96,.14),transparent 35%); }
.service-page--intel .service-hero-copy { background:radial-gradient(circle at 92% 10%,rgba(158,182,200,.13),transparent 35%); }
.service-breadcrumb { display:inline-block; color:#9eabb4; text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; font-weight:800; }
.service-page--asset .service-breadcrumb:hover { color:var(--asset); }.service-page--intel .service-breadcrumb:hover{color:var(--intel)}
.service-serial { position:absolute; right:32px; top:22px; font-size:clamp(5.2rem,9vw,9.5rem); line-height:1; letter-spacing:-.08em; font-weight:850; color:rgba(255,255,255,.035); }
.service-hero h1 { max-width:900px; font-size:clamp(2.9rem,4.8vw,5rem); margin:28px 0 26px; position:relative; z-index:2; }
.service-hero-statement { max-width:780px; color:var(--accent-2); font-size:clamp(1.15rem,1.6vw,1.45rem); font-weight:650; }
.service-page--intel .service-hero-statement { color:var(--intel); }
.service-hero-side p { color:#b8c5cd; font-size:1.02rem; }
.service-hero-side .text-link { margin-top:14px; }
.service-purpose { padding:0; background:#0a1117; border-bottom:1px solid var(--line); }
.purpose-grid { display:grid; grid-template-columns:1.1fr repeat(3,1fr); border-left:1px solid var(--line); border-right:1px solid var(--line); }
.purpose-grid > * { min-height:135px; padding:26px 28px; border-right:1px solid var(--line); }
.purpose-grid > *:last-child { border-right:0; }
.purpose-item { display:flex; flex-direction:column; justify-content:space-between; }
.purpose-item span { color:var(--accent); font-size:.66rem; letter-spacing:.16em; }
.service-page--intel .purpose-item span { color:var(--intel); }
.purpose-item strong { font-size:1rem; line-height:1.35; }
.service-scope { padding:68px 0 74px; background:#070d12; border-bottom:1px solid var(--line); }
.scope-heading { display:grid; grid-template-columns:.6fr 1.4fr; gap:50px; align-items:start; margin-bottom:32px; }
.scope-heading h2 { margin:0; max-width:800px; }
.scope-panels { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.scope-panel { min-height:260px; padding:30px 30px 26px; border-right:1px solid var(--line); }
.scope-panel:last-child { border-right:0; }
.scope-panel > span { color:var(--accent); font-size:.68rem; letter-spacing:.16em; font-weight:800; }
.service-page--intel .scope-panel > span { color:var(--intel); }
.scope-panel h3 { margin-top:42px; }
.scope-panel p { color:#9eadb7; font-size:.9rem; }
.service-methods { padding:68px 0; background:linear-gradient(110deg,#0c151c,#060b0f); border-bottom:1px solid var(--line); }
.methods-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.methods-grid h2 { margin:14px 0 0; max-width:600px; }
.method-list { border-top:1px solid var(--line); }
.method-list div { min-height:58px; display:grid; grid-template-columns:60px 1fr; align-items:center; border-bottom:1px solid var(--line); color:#d3dce1; }
.method-list span { color:var(--accent); font-size:.66rem; letter-spacing:.16em; }
.service-page--intel .method-list span { color:var(--intel); }
.service-related { padding:62px 0; background:#070d12; border-bottom:1px solid var(--line); }
.related-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:70px; }
.related-grid h2 { margin:14px 0 0; font-size:clamp(2rem,3vw,3rem); }
.related-links { border-top:1px solid var(--line); }
.related-links a { display:grid; grid-template-columns:.7fr 1fr 30px; gap:20px; align-items:center; min-height:80px; border-bottom:1px solid var(--line); color:var(--text); }
.related-links a > span { color:#899aa5; font-size:.75rem; }
.related-links a strong { font-size:.98rem; }.related-links a b{color:var(--accent)}
.service-cta { padding:62px 0; background:linear-gradient(105deg,#17150f,#080e12 62%); }
.service-cta-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:70px; align-items:center; }
.service-cta-grid h2 { margin:14px 0 0; }
.service-cta-grid p { color:#aebbc4; }

/* Services gateway */
.gateway-hero { padding:78px 0 48px; background:#060b0f; }
.gateway-hero h1 { margin:18px 0 22px; }.gateway-hero h1 span{color:var(--accent-2)}
.gateway-hero p { max-width:800px; color:#aebbc4; font-size:1.05rem; }
.gateway-split { padding:0 0 78px; background:#060b0f; }
.gateway-grid { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); }
.gateway-door { min-height:460px; padding:42px; color:var(--text); position:relative; overflow:hidden; display:flex; flex-direction:column; }
.gateway-door + .gateway-door { border-left:1px solid var(--line); }
.gateway-door--asset { background:linear-gradient(135deg,#12202a,#091016); }.gateway-door--intel{background:linear-gradient(135deg,#071018,#0c1a23)}
.gateway-no { position:absolute; right:20px; top:2px; font-size:9rem; font-weight:850; letter-spacing:-.08em; color:rgba(255,255,255,.035); }
.gateway-door h2 { margin:42px 0 18px; }.gateway-door p{color:#aebbc4;max-width:540px}.gateway-door > strong{margin-top:auto;color:var(--accent-2)}.gateway-door--intel > strong{color:var(--intel)}

/* Markets */
.markets-hero { padding:clamp(76px,8vw,118px) 0; background:#060c11; border-bottom:1px solid var(--line); }
.markets-hero-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:clamp(56px,7vw,104px); align-items:end; }
.markets-hero h1 { margin:17px 0 0; max-width:760px; }
.markets-hero h1 span { color:var(--accent-2); }
.markets-hero-copy { border-left:1px solid var(--line-strong); padding-left:clamp(30px,4vw,56px); }
.markets-hero-copy p { color:#aebbc4; font-size:1.05rem; margin:0 0 16px; max-width:570px; }
.markets-hero-copy p:last-child { margin-bottom:0; }
.market-list { padding:0; background:#070d12; }
.market-row { position:relative; display:grid; grid-template-columns:64px 1.05fr .66fr 1.35fr; gap:clamp(18px,2.2vw,34px); align-items:center; min-height:144px; padding-right:52px; border-bottom:1px solid var(--line); color:var(--text); transition:background-color .18s ease,border-color .18s ease; }
.market-row:first-child { border-top:1px solid var(--line); }
.market-row:hover,.market-row:focus-visible { background:rgba(214,171,94,.035); border-color:rgba(214,171,94,.24); outline:none; }
.market-no { color:var(--accent); font-size:.68rem; letter-spacing:.16em; font-weight:800; }
.market-row h2 { font-size:clamp(1.45rem,2.2vw,2.15rem); margin:0; transition:color .18s ease; }
.market-row:hover h2,.market-row:focus-visible h2 { color:var(--accent-2); }
.market-division { color:#d2dbe0; font-weight:750; font-size:.86rem; }
.market-row p { color:#96a7b2; font-size:.9rem; margin:0; max-width:560px; }
.market-go { position:absolute !important; right:10px !important; left:auto !important; top:50%; transform:translateY(-50%); color:var(--accent); font-size:1rem; line-height:1; transition:right .18s ease,top .18s ease; }
.market-row:hover .market-go,.market-row:focus-visible .market-go { right:5px !important; top:calc(50% - 3px); }

/* Footer polish */
.site-footer { background:#05090d; border-top:1px solid rgba(255,255,255,.08); }
.footer-brand div { color:#9eadb7; }.footer-brand strong{color:#fff;letter-spacing:.05em}

@media (max-width: 980px) {
  .home-hero-top,.division-hero-grid,.markets-hero-grid,.service-hero-grid,.service-cta-grid,.positioning-grid,.standard-head,.partner-grid,.principles-grid,.methods-grid,.related-grid { grid-template-columns:1fr; }
  .home-mark { display:none; }
  .division-doors,.gateway-grid { grid-template-columns:1fr; }
  .division-door + .division-door,.gateway-door + .gateway-door { border-left:0; border-top:1px solid var(--line); }
  .positioning-copy { padding-top:0; }
  .standard-head p { justify-self:start; }
  .standard-strip { grid-template-columns:1fr 1fr; }
  .standard-strip > div:nth-child(2){border-right:0}.standard-strip > div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .market-rail { grid-template-columns:1fr 1fr 1fr; }.market-rail span:nth-child(3){border-right:0}.market-rail span:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .division-graphic { border-left:0; border-top:1px solid var(--line); min-height:360px; }
  .division-hero-copy { padding:60px 0 46px; }
  .index-intro { grid-template-columns:1fr; gap:18px; }
  .designed-ledger-row { grid-template-columns:58px 1fr 30px; }.ledger-desc{grid-column:2/3}.ledger-go{grid-column:3;grid-row:1/3}
  .service-hero-side { border-left:0; border-top:1px solid var(--line); padding:38px; }
  .purpose-grid { grid-template-columns:1fr 1fr; }.purpose-grid > *:nth-child(2){border-right:0}.purpose-grid > *:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .scope-heading { grid-template-columns:1fr; gap:16px; }
  .scope-panels { grid-template-columns:1fr; }.scope-panel{border-right:0;border-bottom:1px solid var(--line);min-height:0}.scope-panel:last-child{border-bottom:0}
  .markets-hero-copy { border-left:0; border-top:1px solid var(--line-strong); padding:28px 0 0; }
  .market-row { grid-template-columns:54px 1fr; gap:14px 22px; padding:26px 46px 26px 0; min-height:0; }.market-division,.market-row p{grid-column:2}
}

@media (max-width: 680px) {
  .container { width:min(var(--max),calc(100% - 32px)); }
  .home-hero-top { min-height:0; padding-top:52px; padding-bottom:44px; }
  .home-hero-copy h1 { font-size:clamp(3rem,15vw,4.4rem); }
  .division-door { min-height:0; padding:30px 24px; }.door-body{margin-top:34px}.door-services{grid-template-columns:1fr}.door-services span:nth-child(even){padding-left:0;border-left:0}
  .positioning-copy { grid-template-columns:1fr; }.positioning-copy .small-note{grid-column:auto}
  .standard-strip { grid-template-columns:1fr; }.standard-strip > div{border-right:0;border-bottom:1px solid var(--line)}.standard-strip > div:last-child{border-bottom:0}
  .market-rail { grid-template-columns:1fr 1fr; }.market-rail span{border-bottom:1px solid var(--line)}.market-rail span:nth-child(odd){border-right:1px solid var(--line)}.market-rail span:nth-child(even){border-right:0}.market-rail span:nth-last-child(-n+2){border-bottom:0}
  .market-header { align-items:flex-start; flex-direction:column; }
  .partner-contact { border-left:0; border-top:1px solid rgba(201,161,91,.35); padding:24px 0 0; }
  .division-hero { min-height:0; }.division-hero-grid{min-height:0}.division-graphic{min-height:280px}
  .designed-ledger-row { grid-template-columns:46px 1fr 24px; gap:12px; padding:18px 0; }.ledger-desc{font-size:.82rem}
  .service-hero-grid { border-left:0;border-right:0; }.service-hero-copy{padding:48px 0}.service-hero-side{padding:30px 0}.service-serial{right:0}
  .purpose-grid { grid-template-columns:1fr; border-left:0;border-right:0 }.purpose-grid > *{border-right:0;border-bottom:1px solid var(--line);min-height:110px}.purpose-grid > *:last-child{border-bottom:0}
  .related-links a { grid-template-columns:1fr 24px; gap:8px }.related-links a > span{grid-column:1}.related-links a strong{grid-column:1}.related-links a b{grid-column:2;grid-row:1/3}
  .gateway-door { min-height:380px; padding:30px 24px; }
  .market-row { grid-template-columns:42px 1fr; padding-right:40px; }
}

/* =========================================================
   1.4.0 — bespoke editorial homepage and visual art direction
   ========================================================= */
.gh14-home { background:#070c11; }
.gh14-home section { padding:0; }
.gh14-home .micro-label { margin-bottom:18px; }

.gh14-hero {
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 82% 18%, rgba(201,161,91,.09), transparent 28%),
    linear-gradient(120deg,#060b0f 0%,#09121a 60%,#0c1821 100%);
}
.gh14-hero-grid {
  min-height:680px;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr);
  gap:clamp(46px,6vw,92px);
  align-items:center;
  padding-top:74px;
  padding-bottom:74px;
}
.gh14-hero-copy h1 {
  font-size:clamp(3.6rem,6.2vw,6.6rem);
  line-height:.93;
  max-width:780px;
  margin:18px 0 28px;
}
.gh14-hero-copy h1 span { color:var(--accent-2); }
.gh14-hero-copy > p {
  max-width:720px;
  color:#c8d2d8;
  font-size:clamp(1.04rem,1.35vw,1.24rem);
}
.gh14-hero-actions { margin-top:34px; display:grid; grid-template-columns:1fr 1fr; max-width:760px; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.gh14-hero-actions a { min-height:72px; display:grid; grid-template-columns:34px 1fr auto; gap:13px; align-items:center; padding:0 18px; color:#e8edef; font-weight:720; border-right:1px solid var(--line); transition:background .2s ease, color .2s ease; }
.gh14-hero-actions a:last-child { border-right:0; }
.gh14-hero-actions a:hover { background:rgba(255,255,255,.035); color:var(--accent-2); }
.gh14-hero-actions span { color:var(--accent); font-size:.72rem; letter-spacing:.12em; }
.gh14-hero-actions b { color:var(--accent); font-weight:700; }
.gh14-hero-visual { margin:0; position:relative; min-height:410px; align-self:stretch; overflow:hidden; border-left:1px solid rgba(201,161,91,.35); }
.gh14-hero-visual::before { content:""; position:absolute; z-index:2; inset:0; background:linear-gradient(90deg,rgba(7,12,17,.58),transparent 30%),linear-gradient(180deg,transparent 55%,rgba(7,12,17,.78)); pointer-events:none; }
.gh14-hero-visual img { width:100%; height:100%; min-height:410px; object-fit:cover; object-position:center; filter:saturate(.82) contrast(1.04); transform:scale(1.02); }
.gh14-hero-visual figcaption { position:absolute; z-index:3; left:30px; right:28px; bottom:27px; display:flex; justify-content:space-between; gap:24px; align-items:end; color:#d9e0e4; }
.gh14-hero-visual figcaption span { color:var(--accent-2); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.18em; }
.gh14-hero-visual figcaption b { max-width:280px; font-size:.82rem; font-weight:600; text-align:right; }

.gh14-division { border-bottom:1px solid var(--line); }
.gh14-division--asset { background:linear-gradient(110deg,#0b141c 0%,#0b1116 55%,#070c11 100%); }
.gh14-division--intel { background:linear-gradient(110deg,#061018 0%,#0a151e 55%,#081017 100%); }
.gh14-division-grid { min-height:690px; display:grid; grid-template-columns:minmax(360px,.83fr) minmax(0,1.17fr); gap:0; align-items:stretch; }
.gh14-division-grid--reverse { grid-template-columns:minmax(0,1.17fr) minmax(360px,.83fr); }
.gh14-division-image { margin:0; min-height:690px; overflow:hidden; position:relative; border-right:1px solid var(--line-strong); }
.gh14-division-grid--reverse .gh14-division-image { border-right:0; border-left:1px solid var(--line-strong); }
.gh14-division-image::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,12,17,.02),rgba(7,12,17,.4)),linear-gradient(90deg,transparent 62%,rgba(7,12,17,.42)); }
.gh14-division-image--intel::after { background:linear-gradient(180deg,rgba(7,12,17,.02),rgba(7,12,17,.35)),linear-gradient(270deg,transparent 58%,rgba(7,12,17,.5)); }
.gh14-division-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.78) contrast(1.05); transition:transform .8s ease; }
.gh14-division:hover .gh14-division-image img { transform:scale(1.025); }
.gh14-image-index { position:absolute; z-index:3; top:34px; left:34px; font-size:clamp(4rem,7vw,7.8rem); line-height:1; font-weight:850; letter-spacing:-.08em; color:rgba(255,255,255,.11); }
.gh14-division-image--intel .gh14-image-index { left:auto; right:34px; color:rgba(158,182,200,.14); }
.gh14-division-copy { padding:clamp(54px,6vw,88px) clamp(42px,5vw,76px); display:flex; flex-direction:column; justify-content:center; }
.gh14-division-label { display:flex; align-items:center; gap:15px; color:var(--accent-2); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.18em; }
.gh14-division--intel .gh14-division-label { color:#a9c0d0; }
.gh14-division-label span { display:inline-grid; place-items:center; width:31px; height:31px; border:1px solid currentColor; border-radius:50%; font-size:.63rem; }
.gh14-division-copy h2 { margin:30px 0 22px; font-size:clamp(3rem,5vw,5.35rem); line-height:.92; max-width:760px; }
.gh14-division-copy h2 span { color:var(--accent-2); }
.gh14-division--intel .gh14-division-copy h2 span { color:#a9c0d0; font-size:.72em; line-height:1.03; display:inline-block; margin-top:7px; }
.gh14-division-copy > p { color:#c2cdd3; max-width:720px; font-size:1.04rem; }
.gh14-service-list { margin-top:30px; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.gh14-service-list a { display:grid; grid-template-columns:34px 1fr auto; gap:10px; align-items:center; min-height:58px; padding:8px 14px 8px 0; color:#dce3e7; border-bottom:1px solid var(--line); }
.gh14-service-list a:nth-child(odd) { padding-right:22px; }
.gh14-service-list a:nth-child(even) { padding-left:22px; border-left:1px solid var(--line); }
.gh14-service-list a:hover { color:var(--accent-2); }
.gh14-service-list--intel a:hover { color:#b8cedc; }
.gh14-service-list a span { color:var(--accent); font-size:.67rem; font-weight:800; letter-spacing:.12em; }
.gh14-service-list--intel a span { color:#8faabd; }
.gh14-service-list a strong { font-size:.86rem; font-weight:620; }
.gh14-service-list a b { color:var(--accent); font-weight:700; }
.gh14-service-list--intel a b { color:#9eb6c8; }
.gh14-division-cta { display:inline-flex; align-items:center; gap:13px; margin-top:30px; color:var(--accent-2); font-weight:800; align-self:flex-start; }
.gh14-division-cta--intel { color:#b2c8d7; }
.gh14-division-cta span { transition:transform .2s ease; }
.gh14-division-cta:hover span { transform:translate(3px,-3px); }

.gh14-standard { background:linear-gradient(180deg,#070c11,#091119); border-bottom:1px solid var(--line); padding:clamp(72px,7vw,104px) 0 0 !important; }
.gh14-standard-grid { display:grid; grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr); gap:clamp(50px,7vw,110px); align-items:start; }
.gh14-standard-lead h2 { font-size:clamp(2.55rem,4.4vw,4.8rem); margin:14px 0 0; }
.gh14-standard-lead h2 span { color:var(--accent-2); }
.gh14-process { list-style:none; padding:0; margin:8px 0 0; border-top:1px solid var(--line-strong); }
.gh14-process li { display:grid; grid-template-columns:44px 1fr; gap:20px; padding:21px 0; border-bottom:1px solid var(--line); }
.gh14-process li > span { color:var(--accent); font-size:.68rem; font-weight:800; letter-spacing:.14em; padding-top:4px; }
.gh14-process strong { display:block; font-size:1.15rem; margin-bottom:3px; }
.gh14-process p { margin:0; color:var(--muted); font-size:.91rem; }
.gh14-markets-line { margin-top:clamp(64px,6vw,92px); border-top:1px solid var(--line-strong); display:grid; grid-template-columns:1.25fr 2.25fr auto; gap:30px; align-items:stretch; }
.gh14-markets-title { padding:28px 0; }
.gh14-markets-title span { display:block; color:var(--accent); text-transform:uppercase; letter-spacing:.17em; font-size:.66rem; font-weight:800; margin-bottom:8px; }
.gh14-markets-title strong { display:block; max-width:390px; font-size:1.22rem; line-height:1.25; }
.gh14-market-names { display:grid; grid-template-columns:repeat(3,1fr); border-left:1px solid var(--line); }
.gh14-market-names span { display:flex; align-items:center; padding:16px 18px; min-height:62px; color:#cbd4d9; font-size:.82rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.gh14-market-names span:nth-last-child(-n+3) { border-bottom:0; }
.gh14-markets-line > a { align-self:center; white-space:nowrap; color:var(--accent-2); font-weight:800; }

.gh14-close { padding:clamp(72px,7vw,100px) 0 !important; background:linear-gradient(110deg,#15130f 0%,#0a1015 47%,#060b0f 100%); border-bottom:1px solid rgba(201,161,91,.3); }
.gh14-close-grid { display:grid; grid-template-columns:1.35fr .65fr; gap:clamp(54px,7vw,110px); align-items:center; }
.gh14-close h2 { font-size:clamp(2.65rem,4.4vw,4.7rem); max-width:820px; margin:12px 0 22px; }
.gh14-close p { max-width:820px; color:#c2cdd3; }
.gh14-close-actions { padding-left:40px; border-left:1px solid rgba(201,161,91,.33); }
.gh14-contact-block { display:block; color:#dce3e7; margin-bottom:20px; }
.gh14-contact-block span { display:block; color:#aab6bf; text-transform:uppercase; font-size:.66rem; letter-spacing:.16em; margin-bottom:8px; }
.gh14-contact-block strong { display:block; color:var(--accent-2); font-size:clamp(1rem,1.5vw,1.35rem); word-break:break-word; }

/* 1.4 division hubs: editorial image-led entrances */
.gh14-hub-hero { padding:0; border-bottom:1px solid var(--line); background:#070c11; }
.gh14-hub-grid { min-height:600px; display:grid; grid-template-columns:1.05fr .95fr; align-items:stretch; }
.gh14-hub-copy { padding:clamp(60px,6vw,88px) clamp(46px,5vw,72px) clamp(60px,6vw,88px) 0; display:flex; flex-direction:column; justify-content:center; }
.gh14-hub-copy h1 { font-size:clamp(3.3rem,5.7vw,6rem); margin:22px 0 24px; }
.gh14-hub-copy p { color:#c2cdd3; max-width:650px; font-size:1.08rem; }
.gh14-hub-visual { margin:0; min-height:600px; overflow:hidden; position:relative; border-left:1px solid var(--line-strong); }
.gh14-hub-visual img { width:100%; height:100%; object-fit:cover; filter:saturate(.8) contrast(1.05); }
.gh14-hub-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,12,17,.3),transparent 40%),linear-gradient(180deg,transparent 65%,rgba(7,12,17,.42)); }
.gh14-hub-visual span { position:absolute; z-index:2; right:28px; bottom:24px; color:rgba(255,255,255,.45); font-size:.69rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.gh14-hub-services { padding:clamp(70px,7vw,100px) 0; border-bottom:1px solid var(--line); }
.gh14-hub-intro { display:grid; grid-template-columns:.72fr 1.28fr; gap:60px; align-items:end; margin-bottom:36px; }
.gh14-hub-intro h2 { margin:0; font-size:clamp(2.5rem,4.2vw,4.4rem); }
.gh14-hub-intro p { margin:0; color:var(--muted); max-width:650px; justify-self:end; }
.gh14-hub-ledger { border-top:1px solid var(--line-strong); }
.gh14-hub-ledger a { display:grid; grid-template-columns:58px minmax(260px,.9fr) minmax(320px,1.1fr) 30px; gap:22px; align-items:center; min-height:88px; color:#dfe5e8; border-bottom:1px solid var(--line); transition:background .2s ease,padding .2s ease; }
.gh14-hub-ledger a:hover { background:rgba(255,255,255,.025); padding-left:12px; }
.gh14-hub-ledger .n { color:var(--accent); font-size:.7rem; font-weight:800; letter-spacing:.13em; }
.gh14-hub-ledger .t { font-size:1.05rem; font-weight:750; }
.gh14-hub-ledger .d { color:var(--muted); font-size:.9rem; }
.gh14-hub-ledger .g { color:var(--accent); text-align:right; }
.gh14-hub-principle { padding:clamp(62px,6vw,88px) 0; background:linear-gradient(180deg,#081017,#070c11); }
.gh14-hub-principle-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:start; }
.gh14-hub-principle h2 { font-size:clamp(2.4rem,4vw,4rem); margin:12px 0 0; }
.gh14-hub-principle-list { border-top:1px solid var(--line-strong); }
.gh14-hub-principle-list div { display:grid; grid-template-columns:42px 1fr; gap:18px; padding:18px 0; border-bottom:1px solid var(--line); }
.gh14-hub-principle-list span { color:var(--accent); font-size:.68rem; font-weight:800; }
.gh14-hub-principle-list strong { font-weight:650; }

/* Add atmosphere to designed service pages without turning imagery into cards. */
.service-page .service-hero { position:relative; overflow:hidden; }
.service-page .service-hero::after { content:""; position:absolute; z-index:0; right:0; top:0; width:38%; height:100%; opacity:.11; background-size:cover; background-position:center; filter:saturate(.6); pointer-events:none; }
.service-page--asset .service-hero::after { background-image:url('assets/visual/asset-operations.jpg'); }
.service-page--intel .service-hero::after { background-image:url('assets/visual/investigation-intelligence.jpg'); opacity:.14; }
.service-page .service-hero-grid { position:relative; z-index:1; }

@media (max-width: 1040px) {
  .gh14-hero-grid,.gh14-standard-grid,.gh14-close-grid,.gh14-hub-grid,.gh14-hub-principle-grid { grid-template-columns:1fr; }
  .gh14-hero-visual { min-height:330px; border-left:0; border-top:1px solid var(--line); }
  .gh14-division-grid,.gh14-division-grid--reverse { grid-template-columns:.8fr 1.2fr; }
  .gh14-markets-line { grid-template-columns:1fr; }
  .gh14-market-names { border-left:0; border-top:1px solid var(--line); }
  .gh14-markets-line > a { padding-bottom:26px; }
  .gh14-close-actions { padding-left:0; padding-top:28px; border-left:0; border-top:1px solid rgba(201,161,91,.3); }
  .gh14-hub-copy { padding-right:0; }
  .gh14-hub-visual { border-left:0; border-top:1px solid var(--line); min-height:390px; }
}

@media (max-width: 760px) {
  .gh14-hero-grid { min-height:0; padding-top:50px; padding-bottom:0; gap:44px; }
  .gh14-hero-copy h1 { font-size:clamp(3rem,14vw,4.5rem); }
  .gh14-hero-actions { grid-template-columns:1fr; }
  .gh14-hero-actions a { border-right:0; border-bottom:1px solid var(--line); }
  .gh14-hero-actions a:last-child { border-bottom:0; }
  .gh14-hero-visual { margin-left:-28px; margin-right:-28px; min-height:270px; }
  .gh14-hero-visual img { min-height:270px; }
  .gh14-hero-visual figcaption { left:20px; right:20px; }
  .gh14-hero-visual figcaption b { display:none; }
  .gh14-division-grid,.gh14-division-grid--reverse { grid-template-columns:1fr; }
  .gh14-division-image,.gh14-division-grid--reverse .gh14-division-image { min-height:360px; border:0; border-bottom:1px solid var(--line); order:0; }
  .gh14-division-grid--reverse .gh14-division-copy { order:1; }
  .gh14-division-grid--reverse .gh14-division-image { order:0; }
  .gh14-division-copy { padding:44px 0 50px; }
  .gh14-division-copy h2 { font-size:clamp(2.8rem,14vw,4.4rem); }
  .gh14-service-list { grid-template-columns:1fr; }
  .gh14-service-list a:nth-child(even),.gh14-service-list a:nth-child(odd) { padding-left:0; padding-right:0; border-left:0; }
  .gh14-standard { padding-top:58px !important; }
  .gh14-market-names { grid-template-columns:1fr 1fr; }
  .gh14-market-names span:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }
  .gh14-market-names span:nth-last-child(-n+2) { border-bottom:0; }
  .gh14-hub-grid { min-height:0; }
  .gh14-hub-copy { padding:48px 0; }
  .gh14-hub-visual { min-height:330px; margin-left:-28px; margin-right:-28px; }
  .gh14-hub-intro { grid-template-columns:1fr; gap:18px; }
  .gh14-hub-intro p { justify-self:start; }
  .gh14-hub-ledger a { grid-template-columns:40px 1fr 24px; gap:12px; padding:17px 0; }
  .gh14-hub-ledger .d { grid-column:2 / 4; margin-top:-6px; }
  .gh14-close { padding:58px 0 !important; }
}

/* =========================================================
   1.4.1 — division-neutral hero + client enquiry finishing
   ========================================================= */
.gh141-hero-visual {
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr auto;
  min-height:430px;
  background:#050a0e;
}
.gh141-hero-visual::before {
  background:linear-gradient(90deg,rgba(7,12,17,.30),transparent 22%,transparent 78%,rgba(7,12,17,.20)),linear-gradient(180deg,transparent 58%,rgba(7,12,17,.82));
}
.gh141-hero-scene {
  position:relative;
  overflow:hidden;
  min-width:0;
}
.gh141-hero-scene + .gh141-hero-scene { border-left:1px solid rgba(255,255,255,.13); }
.gh141-hero-scene img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  filter:saturate(.72) contrast(1.08) brightness(.82);
}
.gh141-hero-scene--asset img { object-position:55% 56%; transform:scale(1.06); }
.gh141-hero-scene--intel img { object-position:50% 90%; transform:scale(1.36); transform-origin:center bottom; }
.gh141-hero-scene::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(6,11,15,.12),rgba(6,11,15,.50));
  pointer-events:none;
}
.gh141-hero-scene > span {
  position:absolute;
  z-index:3;
  top:24px;
  left:24px;
  right:20px;
  color:#eef2f4;
  font-size:.72rem;
  font-weight:760;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-shadow:0 2px 16px rgba(0,0,0,.7);
}
.gh141-hero-scene--intel > span { color:#c4d7e3; }
.gh141-hero-scene > span b {
  display:inline-block;
  margin-right:9px;
  color:var(--accent-2);
  font-size:.68rem;
  letter-spacing:.14em;
}
.gh141-hero-scene--intel > span b { color:#a9c0d0; }
.gh141-hero-visual figcaption {
  grid-column:1 / -1;
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  min-height:64px;
  padding:16px 22px;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(4,8,11,.76);
}

/* Keep I&I visually investigative rather than location-led. */
.gh14-division-image--intel img,
.gh14-hub-hero--intel .gh14-hub-visual img {
  object-position:50% 88%;
  transform:scale(1.34);
  transform-origin:center bottom;
}
.gh14-division--intel:hover .gh14-division-image--intel img { transform:scale(1.37); }
.gh14-hub-hero--intel .gh14-hub-visual::after {
  background:linear-gradient(90deg,rgba(7,12,17,.18),transparent 38%),linear-gradient(180deg,rgba(7,12,17,.04),rgba(7,12,17,.50));
}
.service-page--intel .service-hero::after { background-position:center 88%; background-size:150% auto; }

/* Give prospective clients a clear action without another oversized manifesto section. */
.gh141-client-cta {
  padding:0 !important;
  background:linear-gradient(100deg,#0d1821 0%,#0a1117 52%,#15120d 100%);
  border-bottom:1px solid rgba(201,161,91,.28);
}
.gh141-client-cta-grid {
  min-height:190px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:64px;
  align-items:center;
}
.gh141-client-cta .micro-label { margin:0 0 9px; }
.gh141-client-cta h2 {
  margin:0 0 8px;
  font-size:clamp(2rem,3.2vw,3.45rem);
  line-height:1;
}
.gh141-client-cta p { margin:0; max-width:760px; color:#b9c5cc; font-size:.94rem; }
.gh141-client-link {
  min-width:255px;
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:0 24px;
  color:#091016;
  background:var(--accent-2);
  font-weight:850;
  border:1px solid var(--accent-2);
  transition:transform .2s ease,background .2s ease;
}
.gh141-client-link:hover { color:#071016; background:#f0cf8e; transform:translateY(-2px); }
.gh141-client-link b { font-size:1.05rem; }

/* The partner section should arrive as a purposeful close, not after another blank screen. */
.gh14-close { padding:clamp(52px,5vw,72px) 0 !important; }
.gh14-close h2 { margin-top:8px; }

@media (max-width:1040px) {
  .gh141-hero-visual { min-height:390px; }
  .gh141-client-cta-grid { grid-template-columns:1fr; gap:24px; padding-top:42px; padding-bottom:42px; }
  .gh141-client-link { justify-self:start; }
}

@media (max-width:760px) {
  .gh141-hero-visual { grid-template-columns:1fr 1fr; min-height:310px; margin-left:-28px; margin-right:-28px; }
  .gh141-hero-scene > span { top:16px; left:16px; font-size:.58rem; }
  .gh141-hero-scene > span b { display:block; margin:0 0 4px; }
  .gh141-hero-scene--asset img { transform:scale(1.13); }
  .gh141-hero-scene--intel img { transform:scale(1.48); }
  .gh141-hero-visual figcaption { min-height:56px; padding:13px 16px; }
  .gh141-client-cta-grid { padding-top:36px; padding-bottom:36px; }
  .gh141-client-link { width:100%; min-width:0; }
}

/* =========================================================
   1.4.2 — unique Ghosthawk hero artwork and finishing pass
   ========================================================= */
.gh14-hero-copy h1 {
  font-size:clamp(3.45rem,5.75vw,6.1rem);
  max-width:760px;
}
.gh142-hero-visual {
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  min-height:430px;
  background:#071018;
  border:1px solid rgba(255,255,255,.09);
  border-left-color:rgba(201,161,91,.42);
}
.gh142-hero-visual::before {
  background:linear-gradient(180deg,rgba(5,10,14,.04),rgba(5,10,14,.10) 58%,rgba(5,10,14,.78));
}
.gh142-hero-visual > img {
  position:absolute;
  inset:0 0 64px;
  width:100%;
  height:calc(100% - 64px);
  min-height:0;
  object-fit:cover;
  object-position:center;
  filter:none;
  transform:none;
}
.gh142-hero-tags {
  position:absolute;
  z-index:4;
  left:22px;
  right:22px;
  top:20px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.gh142-hero-tags a {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:10px 12px;
  color:#eef2f4;
  border-top:1px solid rgba(255,255,255,.15);
  background:linear-gradient(90deg,rgba(4,8,11,.72),rgba(4,8,11,.18));
  backdrop-filter:blur(4px);
}
.gh142-hero-tags a:last-child {
  color:#c4d7e3;
  background:linear-gradient(90deg,rgba(4,8,11,.18),rgba(4,8,11,.72));
  justify-content:flex-end;
  text-align:right;
}
.gh142-hero-tags span {
  flex:0 0 auto;
  color:var(--accent-2);
  font-size:.66rem;
  font-weight:850;
  letter-spacing:.14em;
}
.gh142-hero-tags a:last-child span { color:#a9c0d0; }
.gh142-hero-tags strong {
  min-width:0;
  font-size:.67rem;
  font-weight:780;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.gh142-hero-visual figcaption {
  grid-row:2;
  position:relative;
  z-index:5;
  left:auto;
  right:auto;
  bottom:auto;
  min-height:64px;
  padding:16px 22px;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(4,8,11,.88);
}

@media (max-width:760px) {
  .gh14-hero-copy h1 { font-size:clamp(2.85rem,13vw,4.25rem); }
  .gh142-hero-visual { min-height:320px; margin-left:-28px; margin-right:-28px; }
  .gh142-hero-visual > img { inset:0 0 56px; height:calc(100% - 56px); }
  .gh142-hero-tags { left:12px; right:12px; top:12px; gap:6px; }
  .gh142-hero-tags a { padding:8px 9px; gap:6px; }
  .gh142-hero-tags strong { font-size:.55rem; letter-spacing:.06em; }
  .gh142-hero-tags span { font-size:.56rem; }
  .gh142-hero-visual figcaption { min-height:56px; padding:13px 16px; }
}

/* =========================================================
   1.4.3 — refined abstract hero art; no literal vehicle icon
   ========================================================= */
.gh143-hero-visual {
  min-height:430px;
  background:#071018;
}
.gh143-hero-visual::before {
  background:
    linear-gradient(90deg,rgba(5,10,14,.14),transparent 22%),
    linear-gradient(180deg,rgba(5,10,14,.00),rgba(5,10,14,.06) 58%,rgba(5,10,14,.68));
}
.gh143-hero-visual > img {
  inset:0 0 64px;
  width:100%;
  height:calc(100% - 64px);
  object-fit:cover;
  object-position:center;
  opacity:.96;
}
.gh143-hero-visual figcaption {
  min-height:64px;
  padding:16px 22px;
  background:rgba(4,8,11,.90);
}
.gh143-hero-visual figcaption span { color:var(--accent-2); }
.gh143-hero-visual figcaption b { color:#b9cbd6; }

@media (max-width:760px) {
  .gh143-hero-visual { min-height:320px; }
  .gh143-hero-visual > img { inset:0 0 56px; height:calc(100% - 56px); object-position:center; }
}

/* =========================================================
   Ghosthawk 1.5.1 — mock-up led homepage art direction
   Recreates the approved full-screen concept in real HTML/CSS.
   ========================================================= */
.gh15-home {
  background:#050b10;
  --gh15-line:rgba(255,255,255,.12);
  --gh15-gold:#d5aa5b;
  --gh15-gold-hi:#e6bf74;
  --gh15-blue:#9bbbd2;
}
.gh15-home section { padding:0; }
.gh15-shell { width:min(1480px,calc(100% - 86px)); margin:0 auto; }
.home .site-header .container,
.home .site-footer .container { width:min(1480px,calc(100% - 86px)); }
.home .site-header { background:rgba(3,8,12,.97); }
.home .nav-wrap { min-height:100px; }
.home .brand img { width:250px !important; }
.home .primary-menu { gap:clamp(18px,1.7vw,32px); }
.home .primary-menu a { padding-top:38px; padding-bottom:35px; }
.home .primary-menu a::after { bottom:23px; }

.gh15-hero {
  background:
    radial-gradient(circle at 78% 34%,rgba(37,73,99,.11),transparent 30%),
    linear-gradient(180deg,#061019 0%,#050b10 100%);
  border-bottom:1px solid var(--gh15-line);
}
.gh15-hero-main {
  display:grid;
  grid-template-columns:minmax(390px,.72fr) minmax(0,1.55fr);
  align-items:stretch;
  min-height:485px;
}
.gh15-hero-copy {
  padding:34px 42px 28px 0;
  align-self:center;
}
.gh15-home .micro-label {
  color:var(--gh15-gold-hi);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.68rem;
  font-weight:820;
}
.gh15-hero-copy h1 {
  margin:20px 0 16px;
  max-width:480px;
  font-size:clamp(3.25rem,4.65vw,5.3rem);
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:850;
}
.gh15-hero-copy h1 span { color:var(--gh15-gold-hi); }
.gh15-hero-rule { width:34px; height:2px; background:var(--gh15-gold); margin:20px 0 16px; }
.gh15-hero-copy p {
  max-width:475px;
  color:#c7d2d9;
  font-size:.96rem;
  line-height:1.62;
  margin:0;
}
.gh15-hero-copy p strong { color:var(--gh15-gold-hi); font-weight:800; }
.gh15-hero-art {
  margin:0;
  min-height:485px;
  overflow:hidden;
  position:relative;
}
.gh15-hero-art::before {
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  box-shadow:inset 30px 0 45px rgba(5,11,16,.42), inset 0 -18px 30px rgba(5,11,16,.16);
}
.gh15-hero-art img {
  display:block;
  width:100%;
  height:100%;
  min-height:485px;
  object-fit:cover;
  object-position:center;
  filter:saturate(.88) contrast(1.04);
}

.gh15-division-strip {
  display:grid;
  grid-template-columns:1fr 1.06fr .88fr;
  border:1px solid var(--gh15-line);
  border-bottom:0;
}
.gh15-strip-item,
.gh15-strip-summary {
  min-height:78px;
  padding:13px 26px;
  display:flex;
  align-items:center;
  gap:18px;
  border-right:1px solid var(--gh15-line);
}
.gh15-strip-summary { border-right:0; display:block; padding-top:17px; }
.gh15-strip-item { color:#edf1f3; transition:background .18s ease; }
.gh15-strip-item:hover { background:rgba(255,255,255,.025); color:#fff; }
.gh15-strip-no { color:var(--gh15-gold-hi); font-size:1.18rem; font-weight:850; letter-spacing:.03em; }
.gh15-strip-item--intel .gh15-strip-no { color:var(--gh15-blue); }
.gh15-strip-copy { min-width:0; flex:1; }
.gh15-strip-copy strong { display:block; font-size:.92rem; letter-spacing:.02em; text-transform:uppercase; }
.gh15-strip-copy small { display:block; color:#aebcc5; font-size:.78rem; margin-top:1px; }
.gh15-strip-item b { color:var(--gh15-gold-hi); font-size:1.3rem; font-weight:500; }
.gh15-strip-item--intel b { color:var(--gh15-blue); }
.gh15-strip-summary strong { display:block; color:var(--gh15-gold-hi); text-transform:uppercase; letter-spacing:.15em; font-size:.68rem; }
.gh15-strip-summary span { display:block; color:#d6dfe4; margin-top:3px; font-size:.82rem; }

.gh15-standard-market {
  background:linear-gradient(180deg,#071019,#061018);
  border-bottom:1px solid var(--gh15-line);
}
.gh15-standard-market-grid {
  display:grid;
  grid-template-columns:1.05fr 2fr .82fr;
  align-items:stretch;
  min-height:196px;
  border-left:1px solid var(--gh15-line);
  border-right:1px solid var(--gh15-line);
}
.gh15-standard-lead {
  padding:36px 30px;
  border-right:1px solid var(--gh15-line);
}
.gh15-standard-lead h2 {
  margin:15px 0 0;
  font-size:clamp(1.7rem,2.4vw,2.55rem);
  line-height:1.12;
  letter-spacing:-.035em;
}
.gh15-process {
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.gh15-process li {
  min-width:0;
  padding:30px 22px 22px;
  border-right:1px solid var(--gh15-line);
}
.gh15-process svg {
  width:31px;
  height:31px;
  fill:none;
  stroke:var(--gh15-gold-hi);
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
  margin-bottom:11px;
}
.gh15-process li span {
  display:block;
  color:var(--gh15-gold-hi);
  font-size:.67rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.gh15-process li p {
  color:#aebac2;
  margin:7px 0 0;
  font-size:.72rem;
  line-height:1.52;
}
.gh15-market-focus {
  padding:31px 26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh15-market-focus p {
  color:#e4e9ec;
  font-size:1.12rem;
  line-height:1.32;
  margin:11px 0 12px;
}
.gh15-market-focus a { color:var(--gh15-gold-hi); font-weight:800; font-size:.88rem; }
.gh15-market-focus a span { margin-left:6px; }

.gh15-client {
  background:#071019;
  border-bottom:1px solid rgba(213,170,91,.28);
}
.gh15-client-grid {
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  align-items:stretch;
  border-left:1px solid var(--gh15-line);
  border-right:1px solid var(--gh15-line);
}
.gh15-client-copy {
  padding:34px 34px 32px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh15-client-copy h2 {
  margin:10px 0 8px;
  max-width:760px;
  font-size:clamp(2rem,3vw,3.05rem);
  line-height:1.02;
  letter-spacing:-.04em;
}
.gh15-client-copy p { max-width:760px; color:#aebac2; margin:0; font-size:.86rem; }
.gh15-client-action {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:30px;
  border-left:1px solid var(--gh15-line);
  background:
    radial-gradient(circle at 30% 50%,rgba(213,170,91,.10),transparent 52%),
    linear-gradient(115deg,rgba(201,161,91,.055),rgba(7,16,25,.08));
}
.gh15-client-action a {
  width:100%;
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 28px;
  background:linear-gradient(135deg,#d9af62,#e8c57e);
  color:#081017;
  font-weight:850;
  transition:transform .18s ease,filter .18s ease;
}
.gh15-client-action a:hover { color:#081017; transform:translateY(-2px); filter:brightness(1.05); }
.gh15-client-action span { font-size:1.1rem; }

.gh15-partners {
  background:linear-gradient(110deg,#12110f 0%,#091017 50%,#050a0e 100%);
  border-bottom:1px solid rgba(213,170,91,.28);
}
.gh15-partners-grid {
  min-height:265px;
  padding:54px 0;
  display:grid;
  grid-template-columns:1.38fr .62fr;
  gap:72px;
  align-items:center;
}
.gh15-partners h2 {
  margin:12px 0 14px;
  max-width:790px;
  font-size:clamp(2.35rem,3.75vw,4rem);
  line-height:1.00;
}
.gh15-partners p { max-width:790px; color:#b5c1c8; margin:0; font-size:.9rem; }
.gh15-partner-actions { padding-left:40px; border-left:1px solid rgba(213,170,91,.32); }
.gh15-partner-email { display:block; margin-bottom:20px; }
.gh15-partner-email span { display:block; color:#aab8c1; text-transform:uppercase; letter-spacing:.16em; font-size:.64rem; }
.gh15-partner-email strong { display:block; color:var(--gh15-gold-hi); font-size:1.15rem; margin-top:6px; }
.gh15-partner-link { color:var(--gh15-gold-hi); font-weight:850; }
.gh15-partner-link span { margin-left:7px; }

@media (max-width:1100px) {
  .gh15-shell,.home .site-header .container,.home .site-footer .container { width:min(100% - 56px,1480px); }
  .gh15-hero-main { grid-template-columns:.86fr 1.14fr; }
  .gh15-standard-market-grid { grid-template-columns:1fr 2fr; }
  .gh15-market-focus { grid-column:1 / -1; border-top:1px solid var(--gh15-line); display:grid; grid-template-columns:auto 1fr auto; gap:25px; align-items:center; }
  .gh15-market-focus p { margin:0; }
  .gh15-client-grid { grid-template-columns:minmax(0,1fr) 330px; }
  .gh15-client-action { justify-content:center; }
  .gh15-client-action a { max-width:310px; }
}
@media (max-width:820px) {
  .gh15-shell,.home .site-header .container,.home .site-footer .container { width:calc(100% - 38px); }
  .gh15-hero-main { grid-template-columns:1fr; min-height:0; }
  .gh15-hero-copy { padding:42px 0 32px; }
  .gh15-hero-copy h1 { max-width:none; font-size:clamp(3.15rem,13vw,4.8rem); }
  .gh15-hero-copy p { max-width:620px; }
  .gh15-hero-art { min-height:330px; margin-left:-19px; margin-right:-19px; }
  .gh15-hero-art img { min-height:330px; }
  .gh15-division-strip { grid-template-columns:1fr; border-left:0; border-right:0; }
  .gh15-strip-item,.gh15-strip-summary { border-right:0; border-bottom:1px solid var(--gh15-line); }
  .gh15-standard-market-grid { grid-template-columns:1fr; border-left:0; border-right:0; }
  .gh15-standard-lead { border-right:0; border-bottom:1px solid var(--gh15-line); padding-left:0; padding-right:0; }
  .gh15-process { grid-template-columns:1fr 1fr; }
  .gh15-process li:nth-child(2) { border-right:0; }
  .gh15-process li:nth-child(-n+2) { border-bottom:1px solid var(--gh15-line); }
  .gh15-market-focus { grid-column:auto; grid-template-columns:1fr; padding-left:0; padding-right:0; }
  .gh15-client-grid { grid-template-columns:1fr; border-left:0; border-right:0; }
  .gh15-client-copy { padding:34px 0 28px; }
  .gh15-client-action { padding:20px 0 30px; border-left:0; border-top:1px solid var(--gh15-line); justify-content:flex-start; background:none; }
  .gh15-client-action a { max-width:none; }
  .gh15-partners-grid { grid-template-columns:1fr; gap:34px; padding:46px 0; }
  .gh15-partner-actions { padding-left:0; padding-top:26px; border-left:0; border-top:1px solid rgba(213,170,91,.32); }
}
@media (max-width:520px) {
  .gh15-process { grid-template-columns:1fr; }
  .gh15-process li { border-right:0; border-bottom:1px solid var(--gh15-line); }
  .gh15-process li:nth-child(2) { border-right:0; }
  .gh15-hero-art { min-height:270px; }
  .gh15-hero-art img { min-height:270px; }
  .gh15-strip-copy strong { font-size:.82rem; }
  .gh15-strip-copy small { font-size:.72rem; }
}

/* =========================================================
   Ghosthawk 1.5.2 — Asset Operations hub finishing pass
   Keeps the approved hero/service ledger, tightens the division
   workflow and adds a division-specific conversion close.
   ========================================================= */
.gh152-asset-flow {
  padding:clamp(52px,5vw,72px) 0;
  background:
    radial-gradient(circle at 76% 14%,rgba(201,161,91,.07),transparent 28%),
    linear-gradient(180deg,#081017 0%,#060c11 100%);
  border-bottom:1px solid var(--line);
  overflow:hidden;
}
.gh152-asset-flow-grid {
  display:grid;
  grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);
  gap:clamp(54px,7vw,96px);
  align-items:center;
}
.gh152-asset-flow-copy h2 {
  margin:12px 0 20px;
  max-width:620px;
  font-size:clamp(2.45rem,3.85vw,4.15rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.gh152-asset-flow-copy h2 span { color:var(--accent-2); }
.gh152-asset-flow-copy p {
  max-width:600px;
  margin:0;
  color:#aebbc4;
  font-size:.94rem;
}
.gh152-asset-flow-track {
  position:relative;
  padding-top:34px;
  border-top:1px solid var(--line-strong);
}
.gh152-route {
  position:absolute;
  top:-30px;
  right:0;
  width:min(86%,720px);
  height:90px;
  opacity:.28;
  overflow:visible;
  pointer-events:none;
}
.gh152-route path {
  fill:none;
  stroke:var(--accent);
  stroke-width:1.5;
  stroke-dasharray:5 9;
  vector-effect:non-scaling-stroke;
}
.gh152-route circle {
  fill:#071018;
  stroke:var(--accent-2);
  stroke-width:2;
  vector-effect:non-scaling-stroke;
}
.gh152-flow-step {
  display:grid;
  grid-template-columns:44px 1fr;
  gap:18px;
  min-height:82px;
  padding:17px 0;
  border-bottom:1px solid var(--line);
}
.gh152-flow-step > span {
  padding-top:3px;
  color:var(--accent);
  font-size:.67rem;
  font-weight:820;
  letter-spacing:.14em;
}
.gh152-flow-step strong {
  display:block;
  margin-bottom:3px;
  color:#f2f4f5;
  font-size:1.04rem;
}
.gh152-flow-step p {
  margin:0;
  max-width:620px;
  color:#9eacb5;
  font-size:.86rem;
  line-height:1.52;
}
.gh152-asset-cta {
  padding:0;
  background:linear-gradient(105deg,#15130f 0%,#091016 48%,#071018 100%);
  border-bottom:1px solid rgba(201,161,91,.30);
}
.gh152-asset-cta-grid {
  min-height:220px;
  display:grid;
  grid-template-columns:1.28fr .72fr;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh152-asset-cta-grid > div:first-child {
  padding:38px 42px 38px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh152-asset-cta h2 {
  margin:12px 0 0;
  max-width:830px;
  font-size:clamp(2rem,3.25vw,3.55rem);
  line-height:1.04;
  letter-spacing:-.04em;
}
.gh152-asset-cta-action {
  padding:34px 30px 34px 42px;
  border-left:1px solid var(--line);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.gh152-asset-cta-action p {
  margin:0 0 20px;
  color:#acbac3;
  font-size:.9rem;
  max-width:460px;
}
.gh152-asset-cta-action .button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:100%;
  max-width:390px;
}

@media (max-width:1040px) {
  .gh152-asset-flow-grid,
  .gh152-asset-cta-grid { grid-template-columns:1fr; }
  .gh152-asset-cta-grid > div:first-child { padding:34px 30px; }
  .gh152-asset-cta-action { border-left:0; border-top:1px solid var(--line); padding:28px 30px 34px; }
}
@media (max-width:760px) {
  .gh152-asset-flow { padding:46px 0; }
  .gh152-asset-flow-grid { gap:42px; }
  .gh152-route { width:100%; opacity:.22; }
  .gh152-asset-cta-grid { border-left:0; border-right:0; }
  .gh152-asset-cta-grid > div:first-child,
  .gh152-asset-cta-action { padding-left:0; padding-right:0; }
  .gh152-asset-cta-action .button { max-width:none; }
}

/* =========================================================
   Ghosthawk 1.5.3 — Investigation & Intelligence hub identity
   Separates the I&I rhythm from Asset Operations, tightens both
   service entrances, and carries forward the small AO refinements.
   ========================================================= */

/* Tighter hand-off from the division hero into useful service content. */
.gh14-hub-services--asset,
.gh14-hub-services--intel {
  padding-top:clamp(50px,4.8vw,70px);
}

/* I&I hero: fact/intelligence proposition with an investigator-led crop. */
.gh153-intel-title {
  max-width:720px;
  font-size:clamp(3rem,4.9vw,5.25rem) !important;
  line-height:.96 !important;
}
.gh153-intel-title span {
  display:inline-block;
  margin-top:10px;
  color:#a9c6d9;
  font-size:.72em;
  line-height:1.05;
}
.gh14-hub-hero--intel .gh14-hub-visual img {
  object-position:center center !important;
  transform:none !important;
  filter:saturate(.72) contrast(1.08) brightness(.91);
}
.gh14-hub-hero--intel .gh14-hub-visual::before {
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  opacity:.48;
  background:
    radial-gradient(circle at 78% 29%,rgba(177,205,223,.42) 0 2px,transparent 3px),
    radial-gradient(circle at 64% 23%,rgba(177,205,223,.28) 0 2px,transparent 3px),
    linear-gradient(121deg,transparent 0 59%,rgba(177,205,223,.08) 59.2% 59.4%,transparent 59.6%),
    linear-gradient(64deg,transparent 0 68%,rgba(177,205,223,.07) 68.2% 68.4%,transparent 68.6%);
}
.gh14-hub-hero--intel .gh14-hub-visual::after {
  z-index:1;
  background:
    linear-gradient(90deg,rgba(7,12,17,.16),transparent 38%),
    linear-gradient(180deg,rgba(7,12,17,.02),rgba(7,12,17,.42));
}
.gh14-hub-hero--intel .gh14-hub-visual span { z-index:2; }

/* Give the I&I catalogue its own cooler intelligence accent. */
.gh14-hub-services--intel .micro-label,
.gh14-hub-services--intel .gh14-hub-ledger .n,
.gh14-hub-services--intel .gh14-hub-ledger .g {
  color:#9fc1d7;
}
.gh14-hub-services--intel .gh14-hub-ledger a:hover {
  background:rgba(159,193,215,.035);
}

/* I&I method: analytical matrix rather than the AO route/field sequence. */
.gh153-intel-method {
  padding:clamp(50px,5vw,72px) 0;
  background:
    radial-gradient(circle at 80% 8%,rgba(105,149,178,.10),transparent 30%),
    linear-gradient(180deg,#08111a 0%,#070d13 100%);
  border-bottom:1px solid var(--line);
}
.gh153-intel-method-top {
  display:grid;
  grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);
  gap:clamp(54px,7vw,100px);
  align-items:end;
}
.gh153-intel-method-top h2 {
  margin:12px 0 0;
  max-width:650px;
  font-size:clamp(2.45rem,3.8vw,4.1rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.gh153-intel-method-top .micro-label { color:#9fc1d7; }
.gh153-intel-method-top > p {
  margin:0 0 5px;
  max-width:690px;
  color:#aebdc7;
  font-size:.94rem;
}
.gh153-intel-method-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:34px;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.gh153-intel-method-steps article {
  position:relative;
  min-height:205px;
  padding:28px 30px 30px 0;
}
.gh153-intel-method-steps article + article {
  padding-left:30px;
  border-left:1px solid var(--line);
}
.gh153-intel-method-steps article::before {
  content:"";
  position:absolute;
  top:-1px;
  left:0;
  width:58px;
  height:1px;
  background:#9fc1d7;
}
.gh153-intel-method-steps span {
  display:block;
  margin-bottom:22px;
  color:#9fc1d7;
  font-size:.66rem;
  font-weight:820;
  letter-spacing:.16em;
}
.gh153-intel-method-steps h3 {
  margin:0 0 9px;
  color:#f2f4f5;
  font-size:1.16rem;
  line-height:1.24;
}
.gh153-intel-method-steps p {
  margin:0;
  color:#9fadb7;
  font-size:.86rem;
  line-height:1.55;
}

/* I&I close: three-part instruction bar, deliberately not the AO CTA layout. */
.gh153-intel-cta {
  padding:0;
  background:
    radial-gradient(circle at 64% 50%,rgba(105,149,178,.10),transparent 30%),
    linear-gradient(105deg,#0a1721 0%,#081017 58%,#15130f 100%);
  border-bottom:1px solid rgba(159,193,215,.24);
}
.gh153-intel-cta-grid {
  min-height:190px;
  display:grid;
  grid-template-columns:1.05fr .78fr .58fr;
  align-items:center;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh153-intel-cta-grid > * {
  min-height:190px;
  display:flex;
  align-items:center;
}
.gh153-intel-cta-grid > div {
  padding:30px 38px 30px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.gh153-intel-cta .micro-label { color:#9fc1d7; }
.gh153-intel-cta h2 {
  margin:10px 0 0;
  max-width:650px;
  font-size:clamp(2rem,3vw,3.25rem);
  line-height:1.03;
  letter-spacing:-.04em;
}
.gh153-intel-cta-grid > p {
  margin:0;
  padding:30px 36px;
  border-left:1px solid var(--line);
  color:#acbac4;
  font-size:.9rem;
  line-height:1.58;
}
.gh153-intel-cta-grid > .button {
  min-height:auto;
  margin:0 30px;
  display:flex;
  justify-content:space-between;
  gap:22px;
}

@media (max-width:1040px) {
  .gh153-intel-method-top { grid-template-columns:1fr; gap:20px; }
  .gh153-intel-method-top > p { max-width:760px; }
  .gh153-intel-method-steps { grid-template-columns:1fr; }
  .gh153-intel-method-steps article,
  .gh153-intel-method-steps article + article {
    min-height:0;
    padding:24px 0;
    border-left:0;
    border-bottom:1px solid var(--line);
  }
  .gh153-intel-method-steps article:last-child { border-bottom:0; }
  .gh153-intel-cta-grid { grid-template-columns:1fr; }
  .gh153-intel-cta-grid > * { min-height:0; }
  .gh153-intel-cta-grid > div { padding:30px; }
  .gh153-intel-cta-grid > p { padding:24px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh153-intel-cta-grid > .button { margin:0 30px 32px; }
}
@media (max-width:760px) {
  .gh153-intel-title { font-size:clamp(2.7rem,13vw,4.2rem) !important; }
  .gh153-intel-method { padding:44px 0; }
  .gh153-intel-method-steps { margin-top:28px; }
  .gh153-intel-cta-grid { border-left:0; border-right:0; }
  .gh153-intel-cta-grid > div,
  .gh153-intel-cta-grid > p { padding-left:0; padding-right:0; }
  .gh153-intel-cta-grid > .button { margin-left:0; margin-right:0; width:100%; }
}


/* =========================================================
   Ghosthawk 1.5.4 — Stolen Asset service page
   Makes the first individual service page operational rather
   than a stack of repeated template panels, while preserving
   the wider service architecture and all SEO/indexing controls.
   ========================================================= */

/* Small I&I finishing refinements carried into this package. */
.gh14-hub-services--intel { padding-top:clamp(42px,4vw,58px); }
.gh153-intel-cta-grid > .button { min-width:255px; white-space:nowrap; }

/* Let the stolen-asset hero image contribute atmosphere rather than disappear. */
.service-page--stolen .service-hero::after {
  width:46%;
  opacity:.21;
  filter:saturate(.72) contrast(1.06) brightness(1.10);
  background-position:center 60%;
}
.service-page--stolen .service-hero-side {
  background:linear-gradient(90deg,rgba(5,10,14,.40),rgba(5,10,14,.14));
}

/* One operational progression replaces the duplicated purpose + scope blocks. */
.gh154-stolen-path {
  padding:clamp(54px,5.5vw,82px) 0 0;
  background:
    radial-gradient(circle at 78% 18%,rgba(201,161,91,.08),transparent 28%),
    linear-gradient(180deg,#071017 0%,#070d12 100%);
  border-bottom:1px solid var(--line);
}
.gh154-stolen-path-head {
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);
  gap:clamp(46px,7vw,105px);
  align-items:end;
  padding-bottom:32px;
}
.gh154-stolen-path-head h2 {
  margin:12px 0 0;
  max-width:720px;
  font-size:clamp(2.55rem,4.1vw,4.5rem);
  line-height:1;
  letter-spacing:-.045em;
}
.gh154-stolen-path-head > p {
  margin:0 0 5px;
  max-width:700px;
  color:#aebbc4;
  font-size:.95rem;
  line-height:1.6;
}
.gh154-stolen-steps {
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line-strong);
}
.gh154-stolen-steps::before {
  content:"";
  position:absolute;
  top:26px;
  left:4%;
  right:4%;
  height:1px;
  background:linear-gradient(90deg,rgba(201,161,91,.12),rgba(201,161,91,.58),rgba(201,161,91,.12));
  pointer-events:none;
}
.gh154-stolen-steps article {
  position:relative;
  z-index:1;
  min-height:245px;
  padding:52px 34px 38px 0;
}
.gh154-stolen-steps article + article {
  padding-left:34px;
  border-left:1px solid var(--line);
}
.gh154-stolen-steps article::before {
  content:"";
  position:absolute;
  top:20px;
  left:0;
  width:13px;
  height:13px;
  border:2px solid #c9a15b;
  border-radius:50%;
  background:#071017;
}
.gh154-stolen-steps article + article::before { left:34px; }
.gh154-stolen-steps span {
  display:block;
  margin-bottom:20px;
  color:#d7ad63;
  font-size:.66rem;
  font-weight:820;
  letter-spacing:.16em;
}
.gh154-stolen-steps h3 {
  margin:0 0 10px;
  color:#f2f3f4;
  font-size:1.2rem;
  line-height:1.25;
}
.gh154-stolen-steps p {
  margin:0;
  max-width:390px;
  color:#9eabb4;
  font-size:.87rem;
  line-height:1.58;
}

/* Compact technical rail: methods are supporting capability, not another full screen. */
.gh154-stolen-methods {
  padding:38px 0;
  background:linear-gradient(105deg,#101711 0%,#091016 34%,#071017 100%);
  border-bottom:1px solid var(--line);
}
.gh154-stolen-methods-grid {
  display:grid;
  grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr);
  gap:50px;
  align-items:center;
}
.gh154-stolen-methods h2 {
  margin:9px 0 0;
  font-size:clamp(1.7rem,2.3vw,2.55rem);
  line-height:1.05;
}
.gh154-method-rail {
  display:flex;
  flex-wrap:wrap;
  gap:0;
  align-items:center;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.gh154-method-rail span {
  position:relative;
  padding:15px 22px 15px 0;
  margin-right:22px;
  color:#c6d0d6;
  font-size:.82rem;
  line-height:1.4;
}
.gh154-method-rail span:not(:last-child)::after {
  content:"/";
  position:absolute;
  right:-2px;
  color:#c9a15b;
  opacity:.7;
}

.gh154-stolen-related { padding:54px 0; }

/* Service-specific close rather than generic 'Contact Ghosthawk'. */
.gh154-stolen-cta {
  padding:0;
  background:
    radial-gradient(circle at 74% 42%,rgba(201,161,91,.10),transparent 28%),
    linear-gradient(105deg,#17150f 0%,#0a1117 60%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.26);
}
.gh154-stolen-cta-grid {
  min-height:205px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh154-stolen-cta-grid > div:first-child {
  padding:34px 42px 34px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh154-stolen-cta h2 {
  margin:10px 0 0;
  max-width:720px;
  font-size:clamp(2.1rem,3.2vw,3.55rem);
  line-height:1.03;
  letter-spacing:-.04em;
}
.gh154-stolen-cta-action {
  padding:34px 0 34px 44px;
  border-left:1px solid var(--line);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.gh154-stolen-cta-action p {
  margin:0 0 20px;
  max-width:620px;
  color:#aebbc4;
  font-size:.9rem;
  line-height:1.58;
}
.gh154-stolen-cta-action .button {
  min-width:330px;
  display:flex;
  justify-content:space-between;
  gap:24px;
}

@media (max-width:1040px) {
  .gh154-stolen-path-head,
  .gh154-stolen-methods-grid,
  .gh154-stolen-cta-grid { grid-template-columns:1fr; }
  .gh154-stolen-path-head { gap:18px; }
  .gh154-stolen-path-head > p { max-width:760px; }
  .gh154-stolen-steps { grid-template-columns:1fr; }
  .gh154-stolen-steps::before { display:none; }
  .gh154-stolen-steps article,
  .gh154-stolen-steps article + article {
    min-height:0;
    padding:30px 0 30px 34px;
    border-left:0;
    border-bottom:1px solid var(--line);
  }
  .gh154-stolen-steps article:last-child { border-bottom:0; }
  .gh154-stolen-steps article::before,
  .gh154-stolen-steps article + article::before { top:34px; left:0; }
  .gh154-stolen-methods-grid { gap:22px; }
  .gh154-stolen-cta-grid > div:first-child { padding:34px 30px; }
  .gh154-stolen-cta-action { padding:30px; border-left:0; border-top:1px solid var(--line); }
}
@media (max-width:760px) {
  .gh153-intel-cta-grid > .button { min-width:0; white-space:normal; }
  .service-page--stolen .service-hero::after { width:58%; opacity:.14; }
  .gh154-stolen-path { padding-top:44px; }
  .gh154-stolen-path-head h2 { font-size:clamp(2.35rem,12vw,3.55rem); }
  .gh154-stolen-methods { padding:32px 0; }
  .gh154-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh154-method-rail span:last-child { border-bottom:0; }
  .gh154-method-rail span::after { display:none; }
  .gh154-stolen-cta-grid { border-left:0; border-right:0; }
  .gh154-stolen-cta-grid > div:first-child,
  .gh154-stolen-cta-action { padding-left:0; padding-right:0; }
  .gh154-stolen-cta-action .button { min-width:0; width:100%; }
}


/* =========================================================
   Ghosthawk 1.5.5 — Non-Returned Asset service page
   Gives the second Asset Operations service its own case-status
   rhythm rather than cloning the stolen-asset progression.
   ========================================================= */

/* Deferred 1.5.4 Stolen Asset polish. */
.service-page--stolen .service-hero::after {
  opacity:.25;
  filter:saturate(.76) contrast(1.06) brightness(1.14);
}

/* Non-return hero: retain AO imagery but frame it as a case-status problem. */
.service-page--nonreturn .service-hero::after {
  width:43%;
  opacity:.18;
  filter:saturate(.66) contrast(1.05) brightness(1.08);
  background-position:center 58%;
}
.service-page--nonreturn .service-hero-side {
  background:linear-gradient(90deg,rgba(5,10,14,.52),rgba(18,16,12,.18));
}

/* Agreement -> current position: asymmetric case-file composition. */
.gh155-nr-position {
  padding:clamp(58px,6vw,92px) 0;
  background:
    radial-gradient(circle at 18% 22%,rgba(201,161,91,.075),transparent 25%),
    linear-gradient(112deg,#090f14 0%,#071017 56%,#0a1117 100%);
  border-bottom:1px solid var(--line);
}
.gh155-nr-position-grid {
  display:grid;
  grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);
  gap:clamp(56px,7vw,112px);
  align-items:start;
}
.gh155-nr-position-lead {
  position:relative;
  padding-top:10px;
}
.gh155-nr-position-lead h2 {
  margin:14px 0 22px;
  max-width:620px;
  font-size:clamp(2.65rem,4.45vw,4.7rem);
  line-height:.98;
  letter-spacing:-.045em;
}
.gh155-nr-position-lead h2 span { color:var(--accent-2); }
.gh155-nr-position-lead > p {
  margin:0;
  max-width:610px;
  color:#aebbc4;
  font-size:.95rem;
  line-height:1.66;
}
.gh155-nr-status {
  margin-top:38px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  padding:14px 0;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
  color:#cbd4d9;
  font-size:.62rem;
  font-weight:820;
  letter-spacing:.15em;
}
.gh155-nr-status b { color:var(--accent); font-weight:700; }
.gh155-nr-stages {
  position:relative;
  border-top:1px solid var(--line-strong);
  border-left:1px solid rgba(201,161,91,.28);
}
.gh155-nr-stages::before {
  content:"CASE POSITION";
  position:absolute;
  right:0;
  top:-29px;
  color:rgba(201,161,91,.72);
  font-size:.58rem;
  font-weight:820;
  letter-spacing:.18em;
}
.gh155-nr-stages article {
  position:relative;
  min-height:166px;
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:30px;
  padding:30px 12px 28px 36px;
  border-bottom:1px solid var(--line);
}
.gh155-nr-stages article::before {
  content:"";
  position:absolute;
  left:-5px;
  top:38px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#091017;
  border:1px solid var(--accent-2);
  box-shadow:0 0 0 4px rgba(201,161,91,.07);
}
.gh155-nr-stages article > span {
  grid-row:1 / 3;
  color:#d7ad63;
  font-size:.66rem;
  font-weight:820;
  letter-spacing:.16em;
  padding-top:4px;
}
.gh155-nr-stages h3 {
  margin:0 0 9px;
  color:#f2f3f4;
  font-size:1.3rem;
  line-height:1.25;
}
.gh155-nr-stages p {
  margin:0;
  max-width:650px;
  color:#9fadb6;
  font-size:.88rem;
  line-height:1.62;
}

/* Compact non-return case-input rail. */
.gh155-nr-methods {
  padding:40px 0;
  background:linear-gradient(105deg,#17140f 0%,#0b1217 34%,#071017 100%);
  border-bottom:1px solid var(--line);
}
.gh155-nr-methods-grid {
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:52px;
  align-items:center;
}
.gh155-nr-methods h2 {
  margin:9px 0 0;
  max-width:520px;
  font-size:clamp(1.75rem,2.55vw,2.75rem);
  line-height:1.05;
}
.gh155-nr-method-rail {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.gh155-nr-method-rail span {
  position:relative;
  padding:15px 22px 15px 0;
  margin-right:22px;
  color:#c6d0d6;
  font-size:.82rem;
  line-height:1.4;
}
.gh155-nr-method-rail span:not(:last-child)::after {
  content:"/";
  position:absolute;
  right:-2px;
  color:#c9a15b;
  opacity:.7;
}
.gh155-nr-related { padding:54px 0; }

/* Non-return-specific close: three-part instruction brief. */
.gh155-nr-cta {
  padding:0;
  background:
    radial-gradient(circle at 80% 40%,rgba(201,161,91,.10),transparent 25%),
    linear-gradient(105deg,#17150f 0%,#0a1117 58%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.26);
}
.gh155-nr-cta-grid {
  min-height:205px;
  display:grid;
  grid-template-columns:1.05fr .95fr auto;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh155-nr-cta-grid > div,
.gh155-nr-cta-grid > p,
.gh155-nr-cta-grid > .button {
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh155-nr-cta-grid > div { padding:32px 36px 32px 0; }
.gh155-nr-cta h2 {
  margin:10px 0 0;
  max-width:670px;
  font-size:clamp(2rem,3vw,3.35rem);
  line-height:1.03;
  letter-spacing:-.04em;
}
.gh155-nr-cta-grid > p {
  margin:0;
  padding:34px 38px;
  border-left:1px solid var(--line);
  color:#aebbc4;
  font-size:.88rem;
  line-height:1.6;
}
.gh155-nr-cta-grid > .button {
  align-self:center;
  min-width:335px;
  min-height:74px;
  margin:0 0 0 32px;
  padding:0 24px;
  white-space:nowrap;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

@media (max-width:1120px) {
  .gh155-nr-position-grid { grid-template-columns:1fr; gap:46px; }
  .gh155-nr-position-lead > p { max-width:760px; }
  .gh155-nr-methods-grid { grid-template-columns:1fr; gap:22px; }
  .gh155-nr-cta-grid { grid-template-columns:1fr; }
  .gh155-nr-cta-grid > div { padding:34px 30px; }
  .gh155-nr-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh155-nr-cta-grid > .button { margin:0 30px 34px; align-self:start; }
}
@media (max-width:760px) {
  .service-page--nonreturn .service-hero::after { width:58%; opacity:.12; }
  .gh155-nr-position { padding:46px 0; }
  .gh155-nr-position-lead h2 { font-size:clamp(2.4rem,12vw,3.6rem); }
  .gh155-nr-status { gap:8px; font-size:.56rem; }
  .gh155-nr-stages article {
    min-height:0;
    grid-template-columns:1fr;
    padding:26px 0 26px 28px;
  }
  .gh155-nr-stages article > span { grid-row:auto; margin-bottom:11px; }
  .gh155-nr-stages article::before { left:-5px; top:31px; }
  .gh155-nr-methods { padding:32px 0; }
  .gh155-nr-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh155-nr-method-rail span:last-child { border-bottom:0; }
  .gh155-nr-method-rail span::after { display:none; }
  .gh155-nr-cta-grid { border-left:0; border-right:0; }
  .gh155-nr-cta-grid > div,
  .gh155-nr-cta-grid > p { padding-left:0; padding-right:0; }
  .gh155-nr-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}

/* =========================================================
   Ghosthawk 1.5.6 — Non-Returned Asset finishing pass
   Separates the page visually from theft-led work and makes
   cross-division escalation explicit rather than implied.
   ========================================================= */
.service-page--nonreturn .service-hero::after {
  width:44%;
  opacity:.92;
  filter:none;
  background-image:url('assets/visual/non-returned-asset-case-v158.svg');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.service-page--nonreturn .service-hero-side {
  position:relative;
  background:linear-gradient(90deg,rgba(5,10,14,.76),rgba(8,14,19,.58) 46%,rgba(8,13,18,.40));
}
.service-page--nonreturn .service-hero-side::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(6,12,17,.94) 0%,rgba(6,12,17,.74) 42%,rgba(6,12,17,.24) 100%);
  pointer-events:none;
}
.service-page--nonreturn .service-hero-side > * { position:relative; z-index:1; }

.gh156-nr-related-links a {
  grid-template-columns:minmax(150px,.52fr) minmax(220px,.8fr) minmax(280px,1.1fr) 24px;
  align-items:start;
  gap:22px;
}
.gh156-nr-related-links a small {
  color:#8f9da6;
  font-size:.78rem;
  line-height:1.5;
  font-weight:450;
  max-width:440px;
}
.gh156-nr-related-links a b { align-self:center; }

@media (max-width:980px) {
  .gh156-nr-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh156-nr-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--nonreturn .service-hero::after { width:66%; opacity:.50; background-position:62% center; }
  .gh156-nr-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh156-nr-related-links a span,
  .gh156-nr-related-links a strong,
  .gh156-nr-related-links a small { grid-column:1 / 2; }
  .gh156-nr-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
}

/* =========================================================
   Ghosthawk 1.6.0 — Asset Investigation & Tracing + Asset Inspection & Verification
   Bespoke Asset Operations tracing page. Keeps the service
   asset-led and visually distinct from I&I tracing work.
   ========================================================= */
.service-page--asset-tracing .service-hero::after {
  width:46%;
  opacity:.96;
  filter:none;
  background-image:url('assets/visual/asset-tracing-network-v160.svg');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.service-page--asset-tracing .service-hero-copy {
  background:
    radial-gradient(circle at 88% 13%,rgba(201,161,91,.13),transparent 31%),
    linear-gradient(112deg,#060c11 0%,#070e13 73%,rgba(10,15,18,.88) 100%);
}
.service-page--asset-tracing .service-hero-side {
  position:relative;
  background:linear-gradient(90deg,rgba(5,10,14,.83),rgba(6,12,17,.58) 52%,rgba(7,13,18,.34));
}
.service-page--asset-tracing .service-hero-side::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(5,10,14,.94),rgba(5,10,14,.70) 45%,rgba(5,10,14,.22));
  pointer-events:none;
}
.service-page--asset-tracing .service-hero-side > * { position:relative; z-index:1; }

.gh159-trace-flow {
  padding:clamp(60px,6vw,94px) 0;
  background:
    radial-gradient(circle at 14% 20%,rgba(201,161,91,.072),transparent 24%),
    radial-gradient(circle at 82% 31%,rgba(130,170,198,.055),transparent 25%),
    linear-gradient(112deg,#091016 0%,#071017 54%,#081116 100%);
  border-bottom:1px solid var(--line);
}
.gh159-trace-flow-grid {
  display:grid;
  grid-template-columns:minmax(330px,.84fr) minmax(0,1.16fr);
  gap:clamp(56px,7vw,116px);
  align-items:start;
}
.gh159-trace-lead h2 {
  margin:14px 0 22px;
  max-width:690px;
  font-size:clamp(2.55rem,4.35vw,4.6rem);
  line-height:.99;
  letter-spacing:-.045em;
}
.gh159-trace-lead h2 span { color:var(--accent-2); }
.gh159-trace-lead > p {
  margin:0;
  max-width:650px;
  color:#aebbc4;
  font-size:.95rem;
  line-height:1.67;
}
.gh159-trace-status {
  margin-top:38px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  padding:14px 0;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
  color:#cbd4d9;
  font-size:.62rem;
  font-weight:820;
  letter-spacing:.15em;
}
.gh159-trace-status b { color:var(--accent); font-weight:700; }
.gh159-trace-stages {
  position:relative;
  border-top:1px solid var(--line-strong);
  border-left:1px solid rgba(201,161,91,.24);
}
.gh159-trace-stages::before {
  content:"TRACE PICTURE";
  position:absolute;
  right:0;
  top:-29px;
  color:rgba(153,191,216,.68);
  font-size:.58rem;
  font-weight:820;
  letter-spacing:.18em;
}
.gh159-trace-stages article {
  position:relative;
  min-height:166px;
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:30px;
  padding:30px 12px 28px 36px;
  border-bottom:1px solid var(--line);
}
.gh159-trace-stages article::before {
  content:"";
  position:absolute;
  left:-5px;
  top:38px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#091017;
  border:1px solid #9abbd2;
  box-shadow:0 0 0 4px rgba(154,187,210,.06);
}
.gh159-trace-stages article > span {
  grid-row:1 / 3;
  color:#9ec2dd;
  font-size:.66rem;
  font-weight:820;
  letter-spacing:.16em;
  padding-top:4px;
}
.gh159-trace-stages h3 {
  margin:0 0 9px;
  color:#f2f3f4;
  font-size:1.3rem;
  line-height:1.25;
}
.gh159-trace-stages p {
  margin:0;
  max-width:660px;
  color:#9fadb6;
  font-size:.88rem;
  line-height:1.62;
}

.gh159-trace-methods {
  padding:40px 0;
  background:
    radial-gradient(circle at 9% 44%,rgba(201,161,91,.07),transparent 18%),
    linear-gradient(105deg,#15140f 0%,#0a1217 36%,#071017 100%);
  border-bottom:1px solid var(--line);
}
.gh159-trace-methods-grid {
  display:grid;
  grid-template-columns:minmax(320px,.74fr) minmax(0,1.26fr);
  gap:54px;
  align-items:center;
}
.gh159-trace-methods h2 {
  margin:9px 0 0;
  max-width:560px;
  font-size:clamp(1.8rem,2.55vw,2.75rem);
  line-height:1.05;
}
.gh159-trace-method-rail {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.gh159-trace-method-rail span {
  position:relative;
  padding:15px 22px 15px 0;
  margin-right:22px;
  color:#c6d0d6;
  font-size:.82rem;
  line-height:1.4;
}
.gh159-trace-method-rail span:not(:last-child)::after {
  content:"/";
  position:absolute;
  right:-2px;
  color:#c9a15b;
  opacity:.7;
}
.gh159-trace-related { padding:54px 0; }
.gh159-trace-related-links a {
  grid-template-columns:minmax(150px,.52fr) minmax(220px,.8fr) minmax(300px,1.18fr) 24px;
  align-items:start;
  gap:22px;
}
.gh159-trace-related-links a small {
  color:#8f9da6;
  font-size:.78rem;
  line-height:1.5;
  font-weight:450;
  max-width:470px;
}
.gh159-trace-related-links a b { align-self:center; }

.gh159-trace-cta {
  padding:0;
  background:
    radial-gradient(circle at 83% 40%,rgba(150,188,214,.08),transparent 24%),
    linear-gradient(105deg,#15140f 0%,#091118 56%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.24);
}
.gh159-trace-cta-grid {
  min-height:220px;
  display:grid;
  grid-template-columns:1.08fr .92fr auto;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh159-trace-cta-grid > div,
.gh159-trace-cta-grid > p,
.gh159-trace-cta-grid > .button {
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gh159-trace-cta-grid > div { padding:32px 36px 32px 0; }
.gh159-trace-cta h2 {
  margin:10px 0 0;
  max-width:760px;
  font-size:clamp(2rem,3vw,3.35rem);
  line-height:1.03;
  letter-spacing:-.04em;
}
.gh159-trace-cta-grid > p {
  margin:0;
  padding:34px 38px;
  border-left:1px solid var(--line);
  color:#aebbc4;
  font-size:.88rem;
  line-height:1.6;
}
.gh159-trace-cta-grid > .button {
  align-self:center;
  min-width:350px;
  min-height:74px;
  margin:0 0 0 32px;
  padding:0 24px;
  white-space:nowrap;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

@media (max-width:1120px) {
  .gh159-trace-flow-grid { grid-template-columns:1fr; gap:46px; }
  .gh159-trace-lead > p { max-width:760px; }
  .gh159-trace-methods-grid { grid-template-columns:1fr; gap:22px; }
  .gh159-trace-cta-grid { grid-template-columns:1fr; }
  .gh159-trace-cta-grid > div { padding:34px 30px; }
  .gh159-trace-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh159-trace-cta-grid > .button { margin:0 30px 34px; align-self:start; }
}
@media (max-width:980px) {
  .gh159-trace-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh159-trace-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--asset-tracing .service-hero::after { width:68%; opacity:.46; background-position:62% center; }
  .gh159-trace-flow { padding:46px 0; }
  .gh159-trace-lead h2 { font-size:clamp(2.35rem,11.5vw,3.6rem); }
  .gh159-trace-status { gap:8px; font-size:.56rem; }
  .gh159-trace-stages article {
    min-height:0;
    grid-template-columns:1fr;
    padding:26px 0 26px 28px;
  }
  .gh159-trace-stages article > span { grid-row:auto; margin-bottom:11px; }
  .gh159-trace-stages article::before { left:-5px; top:31px; }
  .gh159-trace-methods { padding:32px 0; }
  .gh159-trace-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh159-trace-method-rail span:last-child { border-bottom:0; }
  .gh159-trace-method-rail span::after { display:none; }
  .gh159-trace-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh159-trace-related-links a span,
  .gh159-trace-related-links a strong,
  .gh159-trace-related-links a small { grid-column:1 / 2; }
  .gh159-trace-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
  .gh159-trace-cta-grid { border-left:0; border-right:0; }
  .gh159-trace-cta-grid > div,
  .gh159-trace-cta-grid > p { padding-left:0; padding-right:0; }
  .gh159-trace-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}

/* =========================================================
   Ghosthawk 1.6.1 — Asset Inspection & Verification
   Bespoke physical-verification page. Deliberately distinct
   from tracing/recovery and from Investigation & Intelligence.
   ========================================================= */
.service-page--asset-inspection .service-hero::after {
  width:46%; opacity:.96; filter:none;
  background-image:url('assets/visual/asset-inspection-verification-v160.svg');
  background-position:center; background-size:cover; background-repeat:no-repeat;
}
.service-page--asset-inspection .service-hero-copy {
  background:radial-gradient(circle at 88% 14%,rgba(201,161,91,.12),transparent 31%),linear-gradient(112deg,#060c11 0%,#070e13 73%,rgba(10,15,18,.88) 100%);
}
.service-page--asset-inspection .service-hero-side { position:relative; background:linear-gradient(90deg,rgba(5,10,14,.84),rgba(6,12,17,.60) 52%,rgba(7,13,18,.34)); }
.service-page--asset-inspection .service-hero-side::before { content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(90deg,rgba(5,10,14,.94),rgba(5,10,14,.72) 45%,rgba(5,10,14,.22)); pointer-events:none; }
.service-page--asset-inspection .service-hero-side > * { position:relative; z-index:1; }

.gh160-inspect-flow { padding:clamp(60px,6vw,94px) 0; background:radial-gradient(circle at 14% 22%,rgba(201,161,91,.068),transparent 24%),radial-gradient(circle at 82% 29%,rgba(130,170,198,.052),transparent 24%),linear-gradient(112deg,#091016 0%,#071017 54%,#081116 100%); border-bottom:1px solid var(--line); }
.gh160-inspect-flow-grid { display:grid; grid-template-columns:minmax(330px,.84fr) minmax(0,1.16fr); gap:clamp(56px,7vw,116px); align-items:start; padding:0 24px; }
.gh160-inspect-lead h2 { margin:10px 0 20px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(3.1rem,5vw,5.3rem); line-height:.98; letter-spacing:-.045em; }
.gh160-inspect-lead h2 span { color:var(--accent-2); }
.gh160-inspect-lead > p { max-width:620px; color:#b6c4cd; font-size:1rem; }
.gh160-inspect-status { margin-top:30px; padding:15px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; gap:14px; font-size:.62rem; letter-spacing:.18em; font-weight:800; color:#b8c4cc; }
.gh160-inspect-status b { color:var(--accent); }
.gh160-inspect-stages { position:relative; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line); }
.gh160-inspect-stages::before { content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:linear-gradient(var(--accent),rgba(201,161,91,.05)); opacity:.5; }
.gh160-inspect-stages article { position:relative; min-height:138px; padding:28px 0 28px 36px; display:grid; grid-template-columns:120px minmax(0,1fr); column-gap:34px; align-items:start; border-bottom:1px solid var(--line); }
.gh160-inspect-stages article:last-child { border-bottom:0; }
.gh160-inspect-stages article::before { content:""; position:absolute; left:-5px; top:34px; width:10px; height:10px; border-radius:50%; border:1px solid var(--accent); background:#081116; box-shadow:0 0 0 5px rgba(201,161,91,.05); }
.gh160-inspect-stages article > span { color:#9ec2dd; font-size:.64rem; font-weight:800; letter-spacing:.14em; padding-top:3px; }
.gh160-inspect-stage-copy { min-width:0; }
.gh160-inspect-stages h3 { margin:0 0 8px; font-size:1.28rem; line-height:1.2; }
.gh160-inspect-stages p { margin:0; color:#aebbc4; max-width:680px; line-height:1.58; }

.gh160-inspect-evidence { padding:clamp(56px,5vw,82px) 0; background:#071017; border-bottom:1px solid var(--line); }
.gh160-inspect-evidence-grid { padding:0 24px; }
.gh160-inspect-evidence-grid > div:first-child { display:grid; grid-template-columns:.7fr 1.3fr; gap:70px; align-items:end; margin-bottom:32px; }
.gh160-inspect-evidence h2 { margin:6px 0 0; max-width:860px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.5rem,4vw,4.7rem); line-height:1.02; letter-spacing:-.04em; }
.gh160-inspect-evidence h2 br { display:block; }
.gh160-inspect-evidence-panels { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.gh160-inspect-evidence-panels article { min-height:220px; padding:30px 32px; border-right:1px solid var(--line); }
.gh160-inspect-evidence-panels article:last-child { border-right:0; }
.gh160-inspect-evidence-panels span { color:var(--accent); font-size:.66rem; font-weight:800; letter-spacing:.15em; }
.gh160-inspect-evidence-panels h3 { margin:42px 0 8px; font-size:1.35rem; }
.gh160-inspect-evidence-panels p { color:#aebbc4; margin:0; }

.gh160-inspect-methods { padding:40px 0; background:linear-gradient(100deg,rgba(201,161,91,.06),rgba(201,161,91,0) 38%),#081017; border-bottom:1px solid var(--line); }
.gh160-inspect-methods-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:58px; align-items:center; padding:0 24px; }
.gh160-inspect-methods h2 { margin:5px 0 0; max-width:520px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.1rem,3.2vw,3.5rem); line-height:1.04; letter-spacing:-.035em; }
.gh160-inspect-method-rail { padding:18px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; flex-wrap:wrap; row-gap:6px; }
.gh160-inspect-method-rail span { color:#c6d1d7; font-size:.9rem; margin-right:18px; padding:8px 0; }
.gh160-inspect-method-rail span:not(:last-child)::after { content:"/"; color:var(--accent); margin-left:18px; opacity:.85; }
.gh160-inspect-related { padding:54px 0; }
.gh160-inspect-related-links a { grid-template-columns:.72fr 1.05fr 1.25fr 24px; gap:18px; align-items:start; }
.gh160-inspect-related-links a small { color:#8fa1ad; line-height:1.45; font-size:.79rem; }
.gh160-inspect-related-links a b { align-self:center; }
.gh160-inspect-cta { background:linear-gradient(104deg,rgba(201,161,91,.085),rgba(201,161,91,0) 37%),#091118; border-top:1px solid var(--line); }
.gh160-inspect-cta-grid { display:grid; grid-template-columns:1.1fr .75fr .9fr; align-items:stretch; min-height:198px; border-left:1px solid var(--line); border-right:1px solid var(--line); }
.gh160-inspect-cta-grid > div,.gh160-inspect-cta-grid > p,.gh160-inspect-cta-grid > .button { align-self:center; }
.gh160-inspect-cta-grid > div { padding:32px 36px 32px 0; }
.gh160-inspect-cta h2 { margin:7px 0 0; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.5rem,4vw,4rem); line-height:1.02; letter-spacing:-.04em; }
.gh160-inspect-cta-grid > p { margin:0; padding:28px 36px; border-left:1px solid var(--line); color:#b7c4cc; }
.gh160-inspect-cta-grid > .button { margin:0 30px; min-width:260px; justify-self:stretch; text-align:center; }
.gh160-inspect-cta-grid > .button span { margin-left:16px; flex:0 0 auto; }

@media (max-width:1120px) {
  .gh160-inspect-flow-grid { grid-template-columns:1fr; gap:46px; }
  .gh160-inspect-evidence-grid > div:first-child { grid-template-columns:1fr; gap:14px; }
  .gh160-inspect-methods-grid { grid-template-columns:1fr; gap:22px; }
  .gh160-inspect-cta-grid { grid-template-columns:1fr; }
  .gh160-inspect-cta-grid > div { padding:34px 30px; }
  .gh160-inspect-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh160-inspect-cta-grid > .button { margin:0 30px 34px; align-self:start; }
}
@media (max-width:980px) {
  .gh160-inspect-evidence-panels { grid-template-columns:1fr; }
  .gh160-inspect-evidence-panels article { border-right:0; border-bottom:1px solid var(--line); min-height:0; }
  .gh160-inspect-evidence-panels article:last-child { border-bottom:0; }
  .gh160-inspect-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh160-inspect-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--asset-inspection .service-hero::after { width:68%; opacity:.44; background-position:62% center; }
  .gh160-inspect-flow { padding:46px 0; }
  .gh160-inspect-lead h2 { font-size:clamp(2.35rem,11.5vw,3.6rem); }
  .gh160-inspect-stages article { min-height:0; grid-template-columns:1fr; padding:26px 0 26px 28px; row-gap:11px; }
  .gh160-inspect-stages article > span { margin-bottom:0; }
  .gh160-inspect-stages article::before { left:-5px; top:31px; }
  .gh160-inspect-methods { padding:32px 0; }
  .gh160-inspect-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh160-inspect-method-rail span:last-child { border-bottom:0; }
  .gh160-inspect-method-rail span::after { display:none; }
  .gh160-inspect-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh160-inspect-related-links a span,.gh160-inspect-related-links a strong,.gh160-inspect-related-links a small { grid-column:1 / 2; }
  .gh160-inspect-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
  .gh160-inspect-cta-grid { border-left:0; border-right:0; }
  .gh160-inspect-cta-grid > div,.gh160-inspect-cta-grid > p { padding-left:0; padding-right:0; }
  .gh160-inspect-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}

/* =========================================================
   Ghosthawk 1.6.5 — Collision & Incident Investigations
   Factual-investigation-led page with a distinct incident-plan
   visual and a clear boundary for separately qualified forensic
   reconstruction / technical disciplines.
   ========================================================= */
.service-page--collision .service-hero::after {
  width:48%;
  opacity:.94;
  filter:none;
  background-image:url('assets/visual/collision-incident-v220.jpg');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.service-page--collision .service-hero-copy {
  background:radial-gradient(circle at 90% 14%,rgba(158,194,221,.10),transparent 31%),linear-gradient(112deg,#060c11 0%,#071017 72%,rgba(9,15,19,.90) 100%);
}
.service-page--collision .service-hero-side {
  position:relative;
  background:linear-gradient(90deg,rgba(5,10,14,.87),rgba(6,12,17,.62) 52%,rgba(7,13,18,.32));
}
.service-page--collision .service-hero-side::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(5,10,14,.96),rgba(5,10,14,.74) 43%,rgba(5,10,14,.24));
  pointer-events:none;
}
.service-page--collision .service-hero-side > * { position:relative; z-index:1; }
.service-page--collision .service-hero-side .text-link { max-width:360px; }

.gh165-collision-flow {
  padding:clamp(62px,6vw,96px) 0;
  background:radial-gradient(circle at 16% 18%,rgba(158,194,221,.055),transparent 25%),radial-gradient(circle at 82% 35%,rgba(201,161,91,.05),transparent 24%),linear-gradient(112deg,#081119 0%,#071017 54%,#081116 100%);
  border-bottom:1px solid var(--line);
}
.gh165-collision-flow-grid {
  display:grid;
  grid-template-columns:minmax(350px,.86fr) minmax(0,1.14fr);
  gap:clamp(58px,7vw,116px);
  align-items:start;
  padding:0 24px;
}
.gh165-collision-lead h2 {
  margin:10px 0 20px;
  font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif;
  font-size:clamp(3rem,4.8vw,5.15rem);
  line-height:.99;
  letter-spacing:-.045em;
}
.gh165-collision-lead h2 span { color:#a8c7dc; }
.gh165-collision-lead > p { max-width:650px; color:#b5c3cb; font-size:1rem; line-height:1.62; }
.gh165-collision-status {
  margin-top:30px;
  padding:15px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  font-size:.59rem;
  letter-spacing:.17em;
  font-weight:800;
  color:#b7c4cc;
}
.gh165-collision-status b { color:var(--accent); font-weight:800; }
.gh165-collision-stages { position:relative; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line); }
.gh165-collision-stages::before { content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:linear-gradient(#9ec2dd,rgba(158,194,221,.04)); opacity:.56; }
.gh165-collision-stages article {
  position:relative;
  min-height:150px;
  padding:30px 0 30px 38px;
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  column-gap:34px;
  align-items:start;
  border-bottom:1px solid var(--line);
}
.gh165-collision-stages article:last-child { border-bottom:0; }
.gh165-collision-stages article::before { content:""; position:absolute; left:-5px; top:36px; width:10px; height:10px; border-radius:50%; border:1px solid #9ec2dd; background:#081116; box-shadow:0 0 0 5px rgba(158,194,221,.05); }
.gh165-collision-stages article > span { color:#9ec2dd; font-size:.64rem; font-weight:800; letter-spacing:.14em; padding-top:3px; }
.gh165-collision-stage-copy { min-width:0; }
.gh165-collision-stages h3 { margin:0 0 8px; font-size:1.3rem; line-height:1.2; }
.gh165-collision-stages p { margin:0; color:#aebbc4; max-width:720px; line-height:1.6; }

.gh165-collision-ownership {
  padding:clamp(56px,5.4vw,84px) 0;
  background:linear-gradient(100deg,rgba(201,161,91,.045),rgba(201,161,91,0) 34%),#071017;
  border-bottom:1px solid var(--line);
}
.gh165-collision-ownership-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:70px; align-items:start; padding:0 24px; }
.gh165-collision-ownership h2 { margin:8px 0 0; max-width:610px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.45rem,3.6vw,4.15rem); line-height:1.02; letter-spacing:-.04em; }
.gh165-collision-ownership-rows { border-top:1px solid var(--line-strong); }
.gh165-collision-ownership-rows article { display:grid; grid-template-columns:52px minmax(0,1fr); gap:20px; padding:23px 0; border-bottom:1px solid var(--line); }
.gh165-collision-ownership-rows article > span { color:var(--accent); font-size:.65rem; font-weight:800; letter-spacing:.15em; padding-top:3px; }
.gh165-collision-ownership-rows h3 { margin:0 0 7px; font-size:1.16rem; }
.gh165-collision-ownership-rows p { margin:0; color:#aebbc4; line-height:1.58; }

.gh165-collision-methods {
  padding:42px 0;
  background:radial-gradient(circle at 13% 30%,rgba(158,194,221,.05),transparent 22%),linear-gradient(100deg,#0a131a,#071017 55%);
  border-bottom:1px solid var(--line);
}
.gh165-collision-methods-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:58px; align-items:center; padding:0 24px; }
.gh165-collision-methods h2 { margin:5px 0 0; max-width:560px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.05rem,3.1vw,3.45rem); line-height:1.04; letter-spacing:-.035em; }
.gh165-collision-method-rail { padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; flex-wrap:wrap; row-gap:4px; }
.gh165-collision-method-rail span { color:#c7d2d8; font-size:.86rem; margin-right:18px; padding:8px 0; }
.gh165-collision-method-rail span:not(:last-child)::after { content:"/"; color:#9ec2dd; margin-left:18px; opacity:.78; }

.gh165-collision-related { padding:54px 0; }
.gh165-collision-related-links a { grid-template-columns:.66fr .9fr 1.45fr 24px; gap:18px; align-items:start; }
.gh165-collision-related-links a small { color:#8fa1ad; line-height:1.45; font-size:.79rem; }
.gh165-collision-related-links a b { align-self:center; }

.gh165-collision-cta {
  padding:0;
  background:radial-gradient(circle at 82% 42%,rgba(158,194,221,.075),transparent 24%),linear-gradient(105deg,#15140f 0%,#091118 56%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.24);
}
.gh165-collision-cta-grid {
  min-height:220px;
  display:grid;
  grid-template-columns:1.08fr .82fr 1fr;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh165-collision-cta-grid > div,.gh165-collision-cta-grid > p,.gh165-collision-cta-grid > .button { align-self:center; }
.gh165-collision-cta-grid > div { padding:32px 36px 32px 0; }
.gh165-collision-cta h2 { margin:7px 0 0; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.25rem,3.6vw,3.75rem); line-height:1.02; letter-spacing:-.04em; }
.gh165-collision-cta-grid > p { margin:0; padding:30px 36px; border-left:1px solid var(--line); color:#b7c4cc; line-height:1.6; }
.gh165-collision-cta-grid > .button { margin:0 30px; min-width:290px; justify-self:stretch; text-align:center; white-space:normal; line-height:1.3; }
.gh165-collision-cta-grid > .button span { margin-left:16px; flex:0 0 auto; }

@media (max-width:1120px) {
  .gh165-collision-flow-grid,.gh165-collision-ownership-grid,.gh165-collision-methods-grid { grid-template-columns:1fr; gap:38px; }
  .gh165-collision-lead > p { max-width:780px; }
  .gh165-collision-cta-grid { grid-template-columns:1fr; }
  .gh165-collision-cta-grid > div { padding:34px 30px; }
  .gh165-collision-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh165-collision-cta-grid > .button { margin:0 30px 34px; align-self:start; justify-self:start; }
}
@media (max-width:980px) {
  .gh165-collision-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh165-collision-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--collision .service-hero::after { width:70%; opacity:.44; background-position:62% center; }
  .gh165-collision-flow { padding:46px 0; }
  .gh165-collision-lead h2 { font-size:clamp(2.35rem,11.4vw,3.6rem); }
  .gh165-collision-status { gap:8px; font-size:.54rem; }
  .gh165-collision-stages article { min-height:0; grid-template-columns:1fr; padding:26px 0 26px 28px; row-gap:11px; }
  .gh165-collision-stages article::before { left:-5px; top:31px; }
  .gh165-collision-ownership,.gh165-collision-methods { padding:38px 0; }
  .gh165-collision-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh165-collision-method-rail span:last-child { border-bottom:0; }
  .gh165-collision-method-rail span::after { display:none; }
  .gh165-collision-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh165-collision-related-links a span,.gh165-collision-related-links a strong,.gh165-collision-related-links a small { grid-column:1 / 2; }
  .gh165-collision-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
  .gh165-collision-cta-grid { border-left:0; border-right:0; }
  .gh165-collision-cta-grid > div,.gh165-collision-cta-grid > p { padding-left:0; padding-right:0; }
  .gh165-collision-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}

/* =========================================================
   Ghosthawk 1.6.6 — Surveillance
   Observation-led page with a bespoke route / sighting graphic
   and a clear objective → observation → evidence progression.
   ========================================================= */
.service-page--surveillance .service-hero::after {
  width:48%;
  opacity:.95;
  filter:none;
  background-image:url('assets/visual/surveillance-map-interface-v230.jpg');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.service-page--surveillance .service-hero-copy {
  background:radial-gradient(circle at 90% 14%,rgba(158,194,221,.10),transparent 31%),linear-gradient(112deg,#060c11 0%,#071017 72%,rgba(9,15,19,.90) 100%);
}
.service-page--surveillance .service-hero-side {
  position:relative;
  background:linear-gradient(90deg,rgba(5,10,14,.88),rgba(6,12,17,.64) 52%,rgba(7,13,18,.30));
}
.service-page--surveillance .service-hero-side::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(5,10,14,.96),rgba(5,10,14,.74) 43%,rgba(5,10,14,.22));
  pointer-events:none;
}
.service-page--surveillance .service-hero-side > * { position:relative; z-index:1; }
.service-page--surveillance .service-hero-side .text-link { max-width:360px; }

.gh166-surveillance-purpose { background:linear-gradient(90deg,#081017,#091219); }
.gh166-surveillance-purpose .purpose-item span { color:#9ec2dd; }

.gh166-surveillance-flow {
  padding:clamp(62px,6vw,96px) 0;
  background:radial-gradient(circle at 15% 18%,rgba(201,161,91,.055),transparent 25%),radial-gradient(circle at 82% 34%,rgba(158,194,221,.055),transparent 24%),linear-gradient(112deg,#081119 0%,#071017 54%,#081116 100%);
  border-bottom:1px solid var(--line);
}
.gh166-surveillance-flow-grid {
  display:grid;
  grid-template-columns:minmax(350px,.86fr) minmax(0,1.14fr);
  gap:clamp(58px,7vw,116px);
  align-items:start;
  padding:0 24px;
}
.gh166-surveillance-lead h2 {
  margin:10px 0 20px;
  font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif;
  font-size:clamp(3rem,4.8vw,5.15rem);
  line-height:.99;
  letter-spacing:-.045em;
}
.gh166-surveillance-lead h2 span { color:#d7ad63; }
.gh166-surveillance-lead > p { max-width:650px; color:#b5c3cb; font-size:1rem; line-height:1.62; }
.gh166-surveillance-status {
  margin-top:30px;
  padding:15px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  font-size:.59rem;
  letter-spacing:.17em;
  font-weight:800;
  color:#b7c4cc;
}
.gh166-surveillance-status b { color:#9ec2dd; font-weight:800; }
.gh166-surveillance-stages { position:relative; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line); }
.gh166-surveillance-stages::before { content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:linear-gradient(#d7ad63,rgba(215,173,99,.04)); opacity:.58; }
.gh166-surveillance-stages article {
  position:relative;
  min-height:150px;
  padding:30px 0 30px 38px;
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  column-gap:34px;
  align-items:start;
  border-bottom:1px solid var(--line);
}
.gh166-surveillance-stages article:last-child { border-bottom:0; }
.gh166-surveillance-stages article::before { content:""; position:absolute; left:-5px; top:36px; width:10px; height:10px; border-radius:50%; border:1px solid #d7ad63; background:#081116; box-shadow:0 0 0 5px rgba(215,173,99,.05); }
.gh166-surveillance-stages article > span { color:#9ec2dd; font-size:.64rem; font-weight:800; letter-spacing:.14em; padding-top:3px; }
.gh166-surveillance-stage-copy { min-width:0; }
.gh166-surveillance-stages h3 { margin:0 0 8px; font-size:1.3rem; line-height:1.2; }
.gh166-surveillance-stages p { margin:0; color:#aebbc4; max-width:720px; line-height:1.6; }

.gh166-surveillance-methods {
  padding:44px 0;
  background:radial-gradient(circle at 14% 32%,rgba(201,161,91,.05),transparent 22%),linear-gradient(100deg,#0a131a,#071017 55%);
  border-bottom:1px solid var(--line);
}
.gh166-surveillance-methods-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:58px; align-items:center; padding:0 24px; }
.gh166-surveillance-methods h2 { margin:5px 0 0; max-width:570px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.05rem,3.1vw,3.45rem); line-height:1.04; letter-spacing:-.035em; }
.gh166-surveillance-method-rail { padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; flex-wrap:wrap; row-gap:4px; }
.gh166-surveillance-method-rail span { color:#c7d2d8; font-size:.86rem; margin-right:18px; padding:8px 0; }
.gh166-surveillance-method-rail span:not(:last-child)::after { content:"/"; color:#d7ad63; margin-left:18px; opacity:.78; }

.gh166-surveillance-related { padding:54px 0; }
.gh166-surveillance-related-links a { grid-template-columns:.66fr .9fr 1.45fr 24px; gap:18px; align-items:start; }
.gh166-surveillance-related-links a small { color:#8fa1ad; line-height:1.45; font-size:.79rem; }
.gh166-surveillance-related-links a b { align-self:center; }

.gh166-surveillance-cta {
  padding:0;
  background:radial-gradient(circle at 82% 42%,rgba(158,194,221,.075),transparent 24%),linear-gradient(105deg,#15140f 0%,#091118 56%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.24);
}
.gh166-surveillance-cta-grid {
  min-height:220px;
  display:grid;
  grid-template-columns:1.12fr .82fr 1fr;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh166-surveillance-cta-grid > div,.gh166-surveillance-cta-grid > p,.gh166-surveillance-cta-grid > .button { align-self:center; }
.gh166-surveillance-cta-grid > div { padding:32px 36px 32px 0; }
.gh166-surveillance-cta h2 { margin:7px 0 0; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.2rem,3.45vw,3.62rem); line-height:1.02; letter-spacing:-.04em; }
.gh166-surveillance-cta-grid > p { margin:0; padding:30px 36px; border-left:1px solid var(--line); color:#b7c4cc; line-height:1.6; }
.gh166-surveillance-cta-grid > .button { margin:0 30px; min-width:290px; justify-self:stretch; text-align:center; white-space:normal; line-height:1.3; }
.gh166-surveillance-cta-grid > .button span { margin-left:16px; flex:0 0 auto; }

@media (max-width:1120px) {
  .gh166-surveillance-flow-grid,.gh166-surveillance-methods-grid { grid-template-columns:1fr; gap:38px; }
  .gh166-surveillance-lead > p { max-width:780px; }
  .gh166-surveillance-cta-grid { grid-template-columns:1fr; }
  .gh166-surveillance-cta-grid > div { padding:34px 30px; }
  .gh166-surveillance-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh166-surveillance-cta-grid > .button { margin:0 30px 34px; align-self:start; justify-self:start; }
}
@media (max-width:980px) {
  .gh166-surveillance-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh166-surveillance-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--surveillance .service-hero::after { width:70%; opacity:.44; background-position:62% center; }
  .gh166-surveillance-flow { padding:46px 0; }
  .gh166-surveillance-lead h2 { font-size:clamp(2.35rem,11.4vw,3.6rem); }
  .gh166-surveillance-status { gap:8px; font-size:.54rem; }
  .gh166-surveillance-stages article { min-height:0; grid-template-columns:1fr; padding:26px 0 26px 28px; row-gap:11px; }
  .gh166-surveillance-stages article::before { left:-5px; top:31px; }
  .gh166-surveillance-methods { padding:38px 0; }
  .gh166-surveillance-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh166-surveillance-method-rail span:last-child { border-bottom:0; }
  .gh166-surveillance-method-rail span::after { display:none; }
  .gh166-surveillance-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh166-surveillance-related-links a span,.gh166-surveillance-related-links a strong,.gh166-surveillance-related-links a small { grid-column:1 / 2; }
  .gh166-surveillance-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
  .gh166-surveillance-cta-grid { border-left:0; border-right:0; }
  .gh166-surveillance-cta-grid > div,.gh166-surveillance-cta-grid > p { padding-left:0; padding-right:0; }
  .gh166-surveillance-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}

/* =========================================================
   Ghosthawk 1.6.8 — Covert & Undercover Investigations final wording
   Controlled-interaction page separating short covert enquiries,
   purchasing and genuinely undercover deployment.
   ========================================================= */
.service-page--covert .service-hero::after {
  width:48%;
  opacity:.96;
  filter:none;
  background-image:url('assets/visual/covert-undercover-v226.jpg');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.service-page--covert .service-hero-copy {
  background:radial-gradient(circle at 90% 14%,rgba(215,173,99,.095),transparent 31%),linear-gradient(112deg,#060b10 0%,#071017 72%,rgba(9,15,19,.90) 100%);
}
.service-page--covert .service-hero-side {
  position:relative;
  background:linear-gradient(90deg,rgba(5,10,14,.90),rgba(6,12,17,.64) 52%,rgba(7,13,18,.30));
}
.service-page--covert .service-hero-side::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(5,10,14,.96),rgba(5,10,14,.76) 43%,rgba(5,10,14,.22));
  pointer-events:none;
}
.service-page--covert .service-hero-side > * { position:relative; z-index:1; }
.service-page--covert .service-hero-side .text-link { max-width:360px; }
.service-page--covert .service-hero-statement { color:#d9b56f; }

.gh167-covert-purpose { background:linear-gradient(90deg,#09100f,#091219); }
.gh167-covert-purpose .purpose-item span { color:#d7ad63; }

.gh167-covert-flow {
  padding:clamp(62px,6vw,96px) 0;
  background:radial-gradient(circle at 14% 20%,rgba(215,173,99,.06),transparent 25%),radial-gradient(circle at 82% 32%,rgba(158,194,221,.05),transparent 23%),linear-gradient(112deg,#09110f 0%,#071017 54%,#081116 100%);
  border-bottom:1px solid var(--line);
}
.gh167-covert-flow-grid {
  display:grid;
  grid-template-columns:minmax(350px,.86fr) minmax(0,1.14fr);
  gap:clamp(58px,7vw,116px);
  align-items:start;
  padding:0 24px;
}
.gh167-covert-lead h2 {
  margin:10px 0 20px;
  font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif;
  font-size:clamp(3rem,4.8vw,5.1rem);
  line-height:.99;
  letter-spacing:-.045em;
}
.gh167-covert-lead h2 span { color:#d7ad63; }
.gh167-covert-lead > p { max-width:650px; color:#b5c3cb; font-size:1rem; line-height:1.62; }
.gh167-covert-status {
  margin-top:30px;
  padding:15px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  font-size:.59rem;
  letter-spacing:.17em;
  font-weight:800;
  color:#b7c4cc;
}
.gh167-covert-status b { color:#d7ad63; font-weight:800; }
.gh167-covert-stages { position:relative; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line); }
.gh167-covert-stages::before { content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:linear-gradient(#d7ad63,rgba(215,173,99,.04)); opacity:.62; }
.gh167-covert-stages article {
  position:relative;
  min-height:156px;
  padding:30px 0 30px 38px;
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  column-gap:34px;
  align-items:start;
  border-bottom:1px solid var(--line);
}
.gh167-covert-stages article:last-child { border-bottom:0; }
.gh167-covert-stages article::before { content:""; position:absolute; left:-5px; top:36px; width:10px; height:10px; border-radius:50%; border:1px solid #d7ad63; background:#081116; box-shadow:0 0 0 5px rgba(215,173,99,.05); }
.gh167-covert-stages article > span { color:#d7ad63; font-size:.64rem; font-weight:800; letter-spacing:.14em; padding-top:3px; }
.gh167-covert-stage-copy { min-width:0; }
.gh167-covert-stages h3 { margin:0 0 8px; font-size:1.3rem; line-height:1.2; }
.gh167-covert-stages p { margin:0; color:#aebbc4; max-width:720px; line-height:1.6; }

.gh167-covert-distinction {
  padding:clamp(58px,5.5vw,88px) 0;
  background:radial-gradient(circle at 78% 24%,rgba(158,194,221,.045),transparent 24%),linear-gradient(103deg,#071017 0%,#081116 100%);
  border-bottom:1px solid var(--line);
}
.gh167-covert-distinction-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(54px,7vw,110px); align-items:start; padding:0 24px; }
.gh167-covert-distinction-lead h2 { margin:7px 0 18px; max-width:610px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.55rem,4vw,4.35rem); line-height:1.01; letter-spacing:-.042em; }
.gh167-covert-distinction-lead p { margin:0; max-width:620px; color:#aebbc4; line-height:1.64; }
.gh167-covert-distinction-rows { border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line); }
.gh167-covert-distinction-rows article { display:grid; grid-template-columns:156px minmax(0,1fr); gap:28px; padding:27px 0; border-bottom:1px solid var(--line); }
.gh167-covert-distinction-rows article:last-child { border-bottom:0; }
.gh167-covert-distinction-rows article > span { color:#9ec2dd; font-size:.62rem; font-weight:800; letter-spacing:.14em; padding-top:4px; }
.gh167-covert-distinction-rows h3 { margin:0 0 7px; font-size:1.23rem; line-height:1.2; }
.gh167-covert-distinction-rows p { margin:0; color:#aebbc4; line-height:1.58; }

.gh167-covert-methods {
  padding:44px 0;
  background:radial-gradient(circle at 14% 32%,rgba(201,161,91,.05),transparent 22%),linear-gradient(100deg,#0a1318,#071017 55%);
  border-bottom:1px solid var(--line);
}
.gh167-covert-methods-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:58px; align-items:center; padding:0 24px; }
.gh167-covert-methods h2 { margin:5px 0 0; max-width:590px; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.05rem,3.1vw,3.4rem); line-height:1.04; letter-spacing:-.035em; }
.gh167-covert-method-rail { padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; flex-wrap:wrap; row-gap:4px; }
.gh167-covert-method-rail span { color:#c7d2d8; font-size:.86rem; margin-right:18px; padding:8px 0; }
.gh167-covert-method-rail span:not(:last-child)::after { content:"/"; color:#d7ad63; margin-left:18px; opacity:.78; }

.gh167-covert-related { padding:54px 0; }
.gh167-covert-related-links a { grid-template-columns:.66fr .9fr 1.45fr 24px; gap:18px; align-items:start; }
.gh167-covert-related-links a small { color:#8fa1ad; line-height:1.45; font-size:.79rem; }
.gh167-covert-related-links a b { align-self:center; }

.gh167-covert-cta {
  padding:0;
  background:radial-gradient(circle at 82% 42%,rgba(158,194,221,.065),transparent 24%),linear-gradient(105deg,#17140e 0%,#091118 56%,#071017 100%);
  border-bottom:1px solid rgba(201,161,91,.24);
}
.gh167-covert-cta-grid {
  min-height:224px;
  display:grid;
  grid-template-columns:1.12fr .82fr 1fr;
  align-items:stretch;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.gh167-covert-cta-grid > div,.gh167-covert-cta-grid > p,.gh167-covert-cta-grid > .button { align-self:center; }
.gh167-covert-cta-grid > div { padding:32px 36px 32px 0; }
.gh167-covert-cta h2 { margin:7px 0 0; font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:clamp(2.16rem,3.35vw,3.55rem); line-height:1.02; letter-spacing:-.04em; }
.gh167-covert-cta-grid > p { margin:0; padding:30px 36px; border-left:1px solid var(--line); color:#b7c4cc; line-height:1.6; }
.gh167-covert-cta-grid > .button { margin:0 30px; min-width:290px; justify-self:stretch; text-align:center; white-space:normal; line-height:1.3; }
.gh167-covert-cta-grid > .button span { margin-left:16px; flex:0 0 auto; }

@media (max-width:1120px) {
  .gh167-covert-flow-grid,.gh167-covert-distinction-grid,.gh167-covert-methods-grid { grid-template-columns:1fr; gap:38px; }
  .gh167-covert-lead > p,.gh167-covert-distinction-lead p { max-width:780px; }
  .gh167-covert-cta-grid { grid-template-columns:1fr; }
  .gh167-covert-cta-grid > div { padding:34px 30px; }
  .gh167-covert-cta-grid > p { padding:28px 30px; border-left:0; border-top:1px solid var(--line); }
  .gh167-covert-cta-grid > .button { margin:0 30px 34px; align-self:start; justify-self:start; }
}
@media (max-width:980px) {
  .gh167-covert-related-links a { grid-template-columns:1fr 1.35fr 24px; }
  .gh167-covert-related-links a small { grid-column:2 / 3; }
}
@media (max-width:760px) {
  .service-page--covert .service-hero::after { width:72%; opacity:.43; background-position:61% center; }
  .gh167-covert-flow,.gh167-covert-distinction { padding:46px 0; }
  .gh167-covert-lead h2 { font-size:clamp(2.35rem,11.4vw,3.55rem); }
  .gh167-covert-status { gap:8px; font-size:.54rem; }
  .gh167-covert-stages article { min-height:0; grid-template-columns:1fr; padding:26px 0 26px 28px; row-gap:11px; }
  .gh167-covert-stages article::before { left:-5px; top:31px; }
  .gh167-covert-distinction-rows article { grid-template-columns:1fr; gap:10px; padding:24px 0; }
  .gh167-covert-methods { padding:38px 0; }
  .gh167-covert-method-rail span { width:100%; margin:0; padding:12px 0; border-bottom:1px solid var(--line); }
  .gh167-covert-method-rail span:last-child { border-bottom:0; }
  .gh167-covert-method-rail span::after { display:none; }
  .gh167-covert-related-links a { grid-template-columns:1fr 24px; gap:8px 14px; }
  .gh167-covert-related-links a span,.gh167-covert-related-links a strong,.gh167-covert-related-links a small { grid-column:1 / 2; }
  .gh167-covert-related-links a b { grid-column:2 / 3; grid-row:1 / 4; }
  .gh167-covert-cta-grid { border-left:0; border-right:0; }
  .gh167-covert-cta-grid > div,.gh167-covert-cta-grid > p { padding-left:0; padding-right:0; }
  .gh167-covert-cta-grid > .button { width:100%; min-width:0; margin-left:0; margin-right:0; white-space:normal; }
}


/* =========================================================
   1.6.13 — Partnerships: controlled specialist capability
   ========================================================= */
.partnerships-page { background:#070d12; }
.partnerships-hero { padding:0; background:linear-gradient(112deg,#080f15 0%,#0a151e 68%,#0b1720 100%); border-bottom:1px solid var(--line); overflow:hidden; }
.partnerships-hero-grid { min-height:690px; display:grid; grid-template-columns:1.08fr .92fr; align-items:stretch; }
.partnerships-hero-copy { align-self:center; padding:80px 72px 80px 0; position:relative; z-index:2; }
.partnerships-hero h1 { margin:18px 0 28px; max-width:850px; font-size:clamp(3.2rem,5.55vw,5.75rem); line-height:.94; }
.partnerships-hero h1 span { color:var(--accent-2); }
.partnerships-hero-copy > p { max-width:780px; color:#bfccd4; font-size:1.08rem; }
.partnerships-control-copy { margin-top:18px !important; padding-top:20px; border-top:1px solid rgba(255,255,255,.10); color:#96a8b4 !important; font-size:.92rem !important; }
.partnerships-network { position:relative; min-height:620px; border-left:1px solid var(--line); overflow:hidden; background:radial-gradient(circle at 50% 50%,rgba(214,170,96,.06),transparent 36%); }
.partnerships-network::before { content:""; position:absolute; inset:8% -14% 8% 0; background:linear-gradient(130deg,transparent 0 49.8%,rgba(158,182,200,.035) 50%,transparent 50.2% 100%); pointer-events:none; }
.partnerships-network svg { position:absolute; width:94%; height:88%; inset:6% 3%; }
.partner-net-lines path { fill:none; stroke:rgba(201,161,91,.36); stroke-width:1.6; stroke-dasharray:7 9; }
.partner-net-orbits circle { fill:none; stroke:rgba(158,182,200,.11); stroke-width:1.2; }
.partner-net-nodes circle { fill:#0b1821; stroke:rgba(201,161,91,.85); stroke-width:2; }
.partner-net-nodes .partner-net-core { fill:#101b23; stroke:var(--accent-2); stroke-width:2.4; }
.partner-net-label { position:absolute; color:#91a4b0; font-size:.58rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.partner-net-label--core { left:50%; top:50%; transform:translate(-50%,-50%); text-align:center; color:#fff; }
.partner-net-label--core span { display:block; font-size:.72rem; letter-spacing:.11em; }
.partner-net-label--core strong { display:block; margin-top:3px; color:var(--accent-2); font-size:.55rem; letter-spacing:.18em; }
.partner-net-label--a { left:12%; top:13%; }.partner-net-label--b { right:11%; top:12%; }.partner-net-label--c { right:3%; top:49%; }
.partner-net-label--d { right:10%; bottom:12%; }.partner-net-label--e { left:13%; bottom:12%; }.partner-net-label--f { left:2%; top:49%; }

.partnerships-routes { padding:76px 0 82px; background:#070d12; border-bottom:1px solid var(--line); }
.partnerships-routes-head { display:grid; grid-template-columns:.42fr 1fr .74fr; gap:clamp(30px,4vw,62px); align-items:start; margin-bottom:38px; }
.partnerships-routes-head h2 { margin:0; font-size:clamp(2rem,3.25vw,3.35rem); }
.partnerships-routes-head p { margin:3px 0 0; color:#93a4af; font-size:.91rem; }
.partnerships-route-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.partnership-route { min-height:410px; padding:32px 36px 34px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(145deg,rgba(255,255,255,.012),rgba(255,255,255,0)); }
.partnership-route-top { display:flex; justify-content:space-between; gap:20px; align-items:center; color:var(--accent); font-size:.65rem; letter-spacing:.16em; font-weight:800; }
.partnership-route-top b { color:#667985; font-size:.57rem; letter-spacing:.15em; }
.partnership-route h3 { margin:40px 0 10px; font-size:clamp(1.65rem,2.25vw,2.25rem); }
.partnership-route > strong { display:block; max-width:590px; color:#dfe5e8; font-size:.96rem; line-height:1.5; }
.partnership-route > p { max-width:600px; color:#91a3ae; font-size:.88rem; margin-top:14px; }
.partnership-route-tags { margin-top:22px; display:flex; flex-wrap:wrap; gap:8px 10px; }
.partnership-route-tags span { padding:7px 10px; border:1px solid rgba(255,255,255,.10); color:#aab9c2; font-size:.72rem; line-height:1.15; }

.partnerships-standards { padding:78px 0; background:linear-gradient(110deg,#0c151c,#060b0f); border-bottom:1px solid var(--line); }
.partnerships-standards-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:clamp(55px,7vw,100px); align-items:start; }
.partnerships-standards h2 { margin:16px 0 20px; max-width:620px; }
.partnerships-standards h2 span { color:var(--accent-2); }
.partnerships-standards p { max-width:600px; color:#96a7b2; }
.partnership-standard-list { border-top:1px solid var(--line); }
.partnership-standard-list > div { min-height:68px; display:grid; grid-template-columns:58px 1fr; align-items:center; border-bottom:1px solid var(--line); }
.partnership-standard-list span { color:var(--accent); font-size:.65rem; font-weight:800; letter-spacing:.15em; }
.partnership-standard-list strong { font-size:.92rem; color:#dbe2e6; }

.partnerships-cta { padding:68px 0; background:linear-gradient(105deg,#17150f,#0c151c 52%,#081016 100%); border-bottom:1px solid rgba(201,161,91,.22); }
.partnerships-cta-grid { display:grid; grid-template-columns:1fr .9fr; gap:clamp(55px,7vw,100px); align-items:center; }
.partnerships-cta h2 { margin:14px 0 0; max-width:700px; }
.partnerships-cta-grid > div:last-child > p { color:#aebbc4; margin:0 0 12px; max-width:650px; }
.partnerships-cta-actions { margin-top:26px; display:flex; align-items:center; flex-wrap:wrap; gap:14px 22px; }
.partnership-email-link { color:#dce4e8; font-weight:750; border-bottom:1px solid rgba(255,255,255,.2); padding:5px 0; }

@media (max-width: 980px) {
  .partnerships-hero-grid,.partnerships-routes-head,.partnerships-standards-grid,.partnerships-cta-grid { grid-template-columns:1fr; }
  .partnerships-hero-copy { padding:62px 0 48px; }
  .partnerships-network { min-height:440px; border-left:0; border-top:1px solid var(--line); }
  .partnerships-routes-head { gap:18px; }
  .partnerships-route-grid { grid-template-columns:1fr; }
  .partnership-route { min-height:0; }
}
@media (max-width: 680px) {
  .partnerships-hero h1 { font-size:clamp(3rem,14vw,4.5rem); }
  .partnerships-network { min-height:330px; }
  .partner-net-label:not(.partner-net-label--core) { display:none; }
  .partnership-route { padding:28px 24px 30px; }
  .partnership-route h3 { margin-top:30px; }
  .partnerships-cta-actions { align-items:stretch; flex-direction:column; }
  .partnerships-cta-actions .button { width:100%; }
}


/* =========================================================
   1.6.14 — About: experience, two divisions, one operating model
   ========================================================= */
.about-page { background:#070d12; }
.about-hero { padding:0; background:radial-gradient(circle at 82% 36%,rgba(158,194,221,.05),transparent 25%),linear-gradient(112deg,#080f15 0%,#0a151e 68%,#0b1720 100%); border-bottom:1px solid var(--line); }
.about-hero-grid { min-height:565px; display:grid; grid-template-columns:1.17fr .83fr; align-items:center; gap:clamp(56px,7vw,112px); }
.about-hero h1 { margin:18px 0 0; max-width:890px; font-size:clamp(3.25rem,5.45vw,5.55rem); line-height:.95; }
.about-hero-copy { padding-left:clamp(34px,4vw,64px); border-left:1px solid rgba(255,255,255,.12); }
.about-hero-copy p { margin:0 0 18px; max-width:610px; color:#bac8d1; font-size:1.06rem; line-height:1.62; }
.about-hero-copy p:last-child { margin-bottom:0; color:#8fa2ae; font-size:.94rem; }

.about-purpose { padding:76px 0; background:#070d12; border-bottom:1px solid var(--line); }
.about-purpose-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:clamp(60px,8vw,130px); align-items:start; }
.about-purpose h2 { margin:16px 0 0; max-width:720px; font-size:clamp(2.5rem,4.35vw,4.65rem); line-height:.99; }
.about-purpose-grid > div:last-child { padding-top:24px; border-top:1px solid var(--line); }
.about-purpose-grid > div:last-child p { max-width:700px; color:#a7b6bf; margin:0 0 18px; font-size:1rem; line-height:1.65; }

.about-experience { padding:82px 0; background:radial-gradient(circle at 15% 25%,rgba(201,161,91,.055),transparent 26%),linear-gradient(108deg,#0d151b,#071017 58%,#091219); border-bottom:1px solid var(--line); }
.about-experience-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(62px,8vw,128px); align-items:start; }
.about-experience-heading h2 { margin:16px 0 0; max-width:610px; font-size:clamp(2.4rem,3.9vw,4rem); line-height:1.01; }
.about-experience-copy { padding-left:clamp(28px,4vw,58px); border-left:1px solid rgba(201,161,91,.26); }
.about-experience-copy p { max-width:760px; margin:0 0 18px; color:#aebdc6; font-size:.96rem; line-height:1.68; }
.about-experience-copy p:first-child { font-size:1.08rem; color:#c4d0d6; }
.about-experience-copy strong { color:#e3e8eb; font-weight:760; }

.about-divisions { padding:84px 0; background:#070d12; border-bottom:1px solid var(--line); }
.about-divisions-head { display:grid; grid-template-columns:.46fr 1fr .8fr; gap:clamp(30px,4vw,62px); align-items:start; margin-bottom:42px; }
.about-divisions-head h2 { margin:0; font-size:clamp(2.4rem,4vw,4.2rem); line-height:.98; }
.about-divisions-head h2 span { color:var(--accent-2); }
.about-divisions-head p { margin:4px 0 0; max-width:650px; color:#95a7b2; font-size:.92rem; line-height:1.6; }
.about-division-model { display:grid; grid-template-columns:1fr .62fr 1fr; border:1px solid var(--line); min-height:430px; }
.about-division { position:relative; display:flex; flex-direction:column; padding:34px 38px 36px; color:inherit; text-decoration:none; background:linear-gradient(145deg,rgba(255,255,255,.015),rgba(255,255,255,0)); transition:background-color .18s ease; }
.about-division:hover { background:rgba(201,161,91,.035); }
.about-division--asset { border-right:1px solid var(--line); }
.about-division--intel { border-left:1px solid var(--line); }
.about-division-no { color:rgba(255,255,255,.13); font-family:"Arial Black","Franklin Gothic Heavy",Inter,sans-serif; font-size:3.35rem; line-height:1; position:absolute; right:28px; top:24px; }
.about-division h3 { margin:68px 0 14px; max-width:560px; font-size:clamp(1.8rem,2.5vw,2.55rem); line-height:1.08; }
.about-division p { margin:0 0 30px; max-width:580px; color:#96a8b3; font-size:.9rem; line-height:1.62; }
.about-division > strong { margin-top:auto; color:#d8e1e6; font-size:.82rem; letter-spacing:.02em; }
.about-division > strong b { color:var(--accent); margin-left:8px; }
.about-division:hover > strong { color:var(--accent-2); }
.about-model-core { align-self:stretch; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:34px 20px; text-align:center; background:radial-gradient(circle at 50% 50%,rgba(201,161,91,.075),transparent 38%),#081017; }
.about-model-core span { margin-bottom:18px; color:var(--accent); font-size:.58rem; font-weight:800; letter-spacing:.16em; }
.about-model-core strong { width:100%; padding:9px 0; border-top:1px solid rgba(255,255,255,.08); color:#aab9c2; font-size:.74rem; font-weight:700; }
.about-model-core strong:last-child { border-bottom:1px solid rgba(255,255,255,.08); }

.about-principles { padding:78px 0 84px; background:linear-gradient(110deg,#0c151c,#060b0f); border-bottom:1px solid var(--line); }
.about-principles-head { margin-bottom:34px; display:grid; grid-template-columns:.45fr 1.55fr; gap:52px; align-items:start; }
.about-principles-head h2 { margin:0; font-size:clamp(2.35rem,3.8vw,4rem); line-height:1.01; }
.about-principles-head h2 span { color:var(--accent-2); }
.about-principles-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.about-principles-grid article { min-height:285px; padding:30px 32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.about-principles-grid article > span { color:var(--accent); font-size:.64rem; font-weight:800; letter-spacing:.15em; }
.about-principles-grid h3 { margin:40px 0 12px; font-size:1.35rem; }
.about-principles-grid p { margin:0; color:#94a6b1; font-size:.88rem; line-height:1.62; }
.about-cta { background:linear-gradient(105deg,#17150f,#0c151c 52%,#081016 100%); }

@media (max-width: 980px) {
  .about-hero-grid,.about-purpose-grid,.about-experience-grid,.about-divisions-head,.about-principles-head { grid-template-columns:1fr; }
  .about-hero-grid { min-height:0; padding-top:70px; padding-bottom:70px; gap:36px; }
  .about-hero-copy,.about-experience-copy { padding-left:0; padding-top:28px; border-left:0; border-top:1px solid var(--line); }
  .about-purpose-grid,.about-experience-grid { gap:36px; }
  .about-purpose-grid > div:last-child { padding-top:0; border-top:0; }
  .about-divisions-head { gap:18px; }
  .about-division-model { grid-template-columns:1fr; }
  .about-division--asset { border-right:0; border-bottom:1px solid var(--line); }
  .about-division--intel { border-left:0; border-top:1px solid var(--line); }
  .about-model-core { min-height:230px; }
  .about-principles-grid { grid-template-columns:1fr; }
  .about-principles-grid article { min-height:0; }
}
@media (max-width: 680px) {
  .about-hero h1 { font-size:clamp(3rem,13vw,4.4rem); }
  .about-purpose,.about-experience,.about-divisions,.about-principles { padding:58px 0; }
  .about-division { padding:30px 24px; }
  .about-division h3 { margin-top:60px; }
  .about-principles-grid article { padding:28px 24px; }
}

/* 1.6.16 — Contact page */
.contact-v2-hero {
  background: linear-gradient(105deg, #091119 0%, #0b151e 58%, #101c26 100%);
  border-bottom: 1px solid var(--line);
}
.contact-v2-hero-grid {
  min-height: 520px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, .85fr);
  gap: 7vw;
  align-items: center;
}
.contact-v2-hero h1 {
  margin: 24px 0 0;
  max-width: 820px;
  font-size: clamp(4.2rem, 6.7vw, 7.2rem);
  line-height: .93;
  letter-spacing: -.055em;
}
.contact-v2-hero-copy {
  border-left: 1px solid var(--line-strong);
  padding-left: 58px;
  max-width: 560px;
}
.contact-v2-hero-copy p {
  margin: 0 0 22px;
  color: #b8cede;
  font-size: 1.22rem;
  line-height: 1.65;
}
.contact-v2-routes {
  padding: 82px 0 88px;
  background: var(--ink);
  border-bottom: 1px solid var(--line);
}
.contact-v2-route-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--line-strong);
}
.contact-v2-route {
  min-height: 270px;
  padding: 42px 46px;
}
.contact-v2-route + .contact-v2-route {
  border-left: 1px solid var(--line-strong);
}
.contact-v2-value {
  display: inline-block;
  margin: 25px 0 24px;
  color: var(--accent-2);
  font-size: clamp(1.55rem, 2.1vw, 2.25rem);
  font-weight: 800;
  text-decoration: none;
}
.contact-v2-value:hover { color: var(--text); }
.contact-v2-route p {
  max-width: 590px;
  margin: 0;
  color: #abc0cf;
  font-size: 1.04rem;
  line-height: 1.65;
}
.contact-v2-urgent {
  margin-top: 28px;
  min-height: 160px;
  display: grid;
  grid-template-columns: minmax(260px, .85fr) minmax(0, 1.25fr) 42px;
  align-items: center;
  gap: 34px;
  padding: 30px 38px;
  background: linear-gradient(100deg, rgba(201,161,91,.12), rgba(22,38,53,.55));
  border: 1px solid rgba(201,161,91,.38);
  color: var(--text);
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease;
}
.contact-v2-urgent:hover {
  background: linear-gradient(100deg, rgba(201,161,91,.18), rgba(22,38,53,.72));
  border-color: var(--accent);
}
.contact-v2-urgent strong {
  display: block;
  margin-top: 14px;
  color: var(--accent-2);
  font-size: clamp(2rem, 3vw, 3.1rem);
  line-height: 1;
}
.contact-v2-urgent-copy {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #b8cede;
  font-size: 1.05rem;
  line-height: 1.55;
}
.contact-v2-urgent-copy b { color: var(--text); font-size: 1.13rem; }
.contact-v2-urgent-copy em { color: var(--accent-2); font-style: normal; font-weight: 800; }
.contact-v2-arrow { justify-self: end; color: var(--accent-2); font-size: 1.35rem; }
.contact-v2-guidance {
  padding: 94px 0 100px;
  background: #0a1118;
}
.contact-v2-guidance-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(380px, .8fr);
  gap: 8vw;
  align-items: center;
}
.contact-v2-guidance h2 {
  max-width: 720px;
  margin: 22px 0 25px;
  font-size: clamp(3.1rem, 4.6vw, 5.2rem);
  line-height: .98;
  letter-spacing: -.045em;
}
.contact-v2-guidance > .container > div > p {
  max-width: 760px;
  color: #b8cede;
  font-size: 1.08rem;
  line-height: 1.7;
}
.contact-v2-note {
  padding: 38px 40px 40px;
  background: rgba(201,161,91,.045);
  border: 1px solid rgba(201,161,91,.36);
  border-left: 3px solid var(--accent);
}
.contact-v2-note h3 {
  margin: 20px 0 18px;
  font-size: 1.75rem;
}
.contact-v2-note p {
  margin: 0 0 14px;
  color: #c1cbd3;
  font-size: 1rem;
  line-height: 1.65;
}

@media (max-width: 900px) {
  .contact-v2-hero-grid,
  .contact-v2-guidance-grid { grid-template-columns: 1fr; gap: 42px; }
  .contact-v2-hero-grid { min-height: auto; padding-top: 84px; padding-bottom: 84px; }
  .contact-v2-hero-copy { padding-left: 0; padding-top: 32px; border-left: 0; border-top: 1px solid var(--line-strong); }
  .contact-v2-route-grid { grid-template-columns: 1fr; }
  .contact-v2-route + .contact-v2-route { border-left: 0; border-top: 1px solid var(--line-strong); }
  .contact-v2-urgent { grid-template-columns: 1fr auto; }
  .contact-v2-urgent-copy { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
  .contact-v2-routes { padding: 58px 0 64px; }
  .contact-v2-route { padding: 30px 26px; min-height: 0; }
  .contact-v2-value { font-size: 1.32rem; overflow-wrap: anywhere; }
  .contact-v2-urgent { padding: 28px 26px; grid-template-columns: 1fr auto; gap: 20px; }
  .contact-v2-guidance { padding: 68px 0 72px; }
  .contact-v2-note { padding: 30px 26px; }
}

/* =========================================================
   1.6.21 — Technical SEO: meta lengths, sitemap discovery and accurate lastmod
   1.6.20 — Privacy notice: readable legal-document layout
   ========================================================= */
.privacy-page-v2 { background:#070d12; }
.privacy-v2-hero { background:linear-gradient(108deg,#081017 0%,#0b1720 64%,#0c1821 100%); border-bottom:1px solid var(--line); }
.privacy-v2-hero-grid { min-height:430px; display:grid; grid-template-columns:1fr .9fr; gap:clamp(60px,8vw,126px); align-items:center; }
.privacy-v2-hero h1 { margin:18px 0 16px; font-size:clamp(3.9rem,6vw,6.6rem); line-height:.94; letter-spacing:-.05em; }
.privacy-v2-updated { margin:0; color:#8fa3af; font-size:.9rem; font-weight:700; }
.privacy-v2-hero-copy { padding-left:clamp(34px,4vw,58px); border-left:1px solid var(--line-strong); }
.privacy-v2-hero-copy p { margin:0 0 18px; max-width:650px; color:#b4c6d1; font-size:1rem; line-height:1.68; }
.privacy-v2-hero-copy p:last-child { margin-bottom:0; color:#8fa3af; font-size:.91rem; }

.privacy-v2-body { padding:72px 0 100px; background:linear-gradient(105deg,#080f15,#070c11 64%,#081017); }
.privacy-v2-layout { display:grid; grid-template-columns:310px minmax(0,1fr); gap:clamp(56px,7vw,112px); align-items:start; }
.privacy-v2-toc { position:sticky; top:120px; padding:25px 0 8px; border-top:1px solid rgba(201,161,91,.34); }
.privacy-v2-toc nav { margin-top:20px; border-top:1px solid var(--line); }
.privacy-v2-toc a { display:grid; grid-template-columns:34px 1fr; gap:10px; padding:10px 3px; color:#95a9b5; border-bottom:1px solid var(--line); text-decoration:none; font-size:.77rem; line-height:1.35; transition:color .15s ease,padding-left .15s ease; }
.privacy-v2-toc a span { color:var(--accent); font-size:.62rem; font-weight:800; letter-spacing:.1em; }
.privacy-v2-toc a:hover { color:var(--text); padding-left:6px; }

.privacy-v2-content { max-width:920px; }
.privacy-v2-section { position:relative; padding:0 0 54px; margin:0 0 54px; border-bottom:1px solid var(--line); scroll-margin-top:120px; }
.privacy-v2-section:last-child { margin-bottom:0; padding-bottom:0; border-bottom:0; }
.privacy-v2-section-no { margin-bottom:14px; color:var(--accent); font-size:.62rem; font-weight:800; letter-spacing:.14em; }
.privacy-v2-section h2 { margin:0 0 24px; max-width:820px; font-size:clamp(2.25rem,3.3vw,3.55rem); line-height:1.02; letter-spacing:-.035em; }
.privacy-v2-section h3 { margin:0 0 9px; font-size:1.04rem; }
.privacy-v2-section p { margin:0 0 18px; max-width:880px; color:#aebfc9; font-size:.94rem; line-height:1.72; }
.privacy-v2-section p strong { color:#e3e8eb; }
.privacy-v2-section a { color:var(--accent-2); text-decoration:none; border-bottom:1px solid rgba(201,161,91,.3); }
.privacy-v2-section a:hover { color:#f0d28c; border-color:var(--accent); }
.privacy-v2-section ul { margin:18px 0 22px; padding:0; list-style:none; border-top:1px solid var(--line); }
.privacy-v2-section li { position:relative; padding:12px 10px 12px 26px; color:#b5c3cb; font-size:.9rem; line-height:1.58; border-bottom:1px solid var(--line); }
.privacy-v2-section li::before { content:"—"; position:absolute; left:0; color:var(--accent); }
.privacy-v2-section li strong { color:#dce4e8; }

.privacy-v2-facts { margin:26px 0 26px; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.privacy-v2-facts > div { min-height:128px; padding:24px 26px; border-right:1px solid var(--line); }
.privacy-v2-facts > div:last-child { border-right:0; }
.privacy-v2-facts span { display:block; margin-bottom:13px; color:#768c9a; font-size:.62rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.privacy-v2-facts strong { display:block; color:#dbe3e7; font-size:.83rem; line-height:1.52; }
.privacy-v2-facts--ico { grid-template-columns:1.6fr .7fr .7fr; }

.privacy-v2-basis-grid { display:grid; grid-template-columns:repeat(2,1fr); margin:28px 0; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.privacy-v2-basis-grid article { min-height:165px; padding:24px 26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.privacy-v2-basis-grid article h3 { color:#dfe6e9; }
.privacy-v2-basis-grid article p { margin:0; color:#91a4af; font-size:.84rem; line-height:1.6; }
.privacy-v2-note { margin:28px 0 0; padding:28px 30px; background:linear-gradient(110deg,rgba(201,161,91,.07),rgba(20,35,46,.35)); border:1px solid rgba(201,161,91,.3); border-left:3px solid var(--accent); }
.privacy-v2-note h3 { color:#e4e8e9; font-size:1.18rem; }
.privacy-v2-note p { margin:0; color:#aebfc9; font-size:.89rem; }

@media (max-width: 1040px) {
  .privacy-v2-layout { grid-template-columns:1fr; gap:44px; }
  .privacy-v2-toc { position:static; top:auto; }
  .privacy-v2-toc nav { display:grid; grid-template-columns:repeat(2,1fr); }
  .privacy-v2-toc a:nth-child(odd) { border-right:1px solid var(--line); padding-right:18px; }
  .privacy-v2-toc a:nth-child(even) { padding-left:18px; }
  .privacy-v2-content { max-width:none; }
}
@media (max-width: 820px) {
  .privacy-v2-hero-grid { grid-template-columns:1fr; min-height:0; padding-top:72px; padding-bottom:72px; gap:36px; }
  .privacy-v2-hero-copy { padding-left:0; padding-top:28px; border-left:0; border-top:1px solid var(--line-strong); }
  .privacy-v2-facts,.privacy-v2-facts--ico,.privacy-v2-basis-grid { grid-template-columns:1fr; }
  .privacy-v2-facts > div { min-height:0; border-right:0; border-bottom:1px solid var(--line); }
  .privacy-v2-facts > div:last-child { border-bottom:0; }
}
@media (max-width: 620px) {
  .privacy-v2-body { padding:52px 0 72px; }
  .privacy-v2-toc nav { grid-template-columns:1fr; }
  .privacy-v2-toc a:nth-child(odd),.privacy-v2-toc a:nth-child(even) { border-right:0; padding-left:3px; padding-right:3px; }
  .privacy-v2-section { margin-bottom:42px; padding-bottom:42px; }
  .privacy-v2-section h2 { font-size:clamp(2.05rem,10vw,2.8rem); }
  .privacy-v2-section li { padding-right:0; }
  .privacy-v2-basis-grid article,.privacy-v2-note { padding:22px 20px; }
}

/* -------------------------------------------------------------------------
   1.6.22 — Insights content cluster
   ------------------------------------------------------------------------- */
.gh-insights { background:#070c10; color:#d6dde2; }
.gh-insights-hero,
.gh-insight-hero { padding:92px 0 78px; border-bottom:1px solid rgba(255,255,255,.09); background:linear-gradient(180deg,#091117 0%,#070c10 100%); }
.gh-insights-hero-grid,
.gh-insight-hero-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr); gap:80px; align-items:end; }
.gh-insights-hero h1,
.gh-insight-hero h1 { margin:12px 0 0; max-width:900px; color:#fff; font-size:clamp(2.7rem,5.2vw,5.7rem); line-height:.96; letter-spacing:-.045em; }
.gh-insights-hero-grid > p,
.gh-insight-hero-copy > p { margin:0; color:#aebbc4; font-size:1.08rem; line-height:1.75; max-width:650px; }
.gh-insight-hero-copy .text-link { margin-top:28px; display:inline-flex; }
.gh-insights-index { padding:78px 0 100px; }
.gh-insights-index-head { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; margin-bottom:38px; }
.gh-insights-index-head h2 { margin:8px 0 0; color:#fff; font-size:clamp(2rem,3.2vw,3.5rem); letter-spacing:-.03em; }
.gh-insights-index-head > p { margin:0; color:#8f9da7; line-height:1.7; max-width:620px; }
.gh-insights-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.1); border-left:1px solid rgba(255,255,255,.1); }
.gh-insight-card { display:flex; flex-direction:column; min-height:420px; padding:34px; border-right:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.1); color:inherit; text-decoration:none; transition:background .2s ease,transform .2s ease; }
.gh-insight-card:hover { background:rgba(255,255,255,.035); }
.gh-insight-card > span { color:#c9a75d; font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.gh-insight-card-tag { margin:40px 0 12px; color:#8f9da7; font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; }
.gh-insight-card h2 { margin:0; color:#fff; font-size:clamp(1.55rem,2.3vw,2.45rem); line-height:1.08; letter-spacing:-.025em; }
.gh-insight-card p { margin:22px 0 30px; color:#aebbc4; line-height:1.68; }
.gh-insight-card strong { margin-top:auto; color:#fff; font-size:.85rem; letter-spacing:.02em; }
.gh-insight-card strong b { color:#c9a75d; margin-left:7px; }
.gh-insight-body { padding:82px 0 104px; background:#0a1015; }
.gh-insight-body-grid { display:grid; grid-template-columns:300px minmax(0,760px); gap:88px; justify-content:center; align-items:start; }
.gh-insight-rail { position:sticky; top:112px; display:flex; flex-direction:column; gap:0; border-top:1px solid rgba(255,255,255,.1); }
.gh-insight-rail .micro-label { padding:0 0 18px; margin-top:-28px; }
.gh-insight-rail span { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.08); color:#7f8d97; font-size:.72rem; line-height:1.45; text-transform:uppercase; letter-spacing:.07em; }
.gh-insight-copy > section { padding:0 0 48px; margin:0 0 46px; border-bottom:1px solid rgba(255,255,255,.09); }
.gh-insight-copy h2 { margin:0 0 20px; color:#fff; font-size:clamp(1.7rem,2.7vw,2.7rem); line-height:1.08; letter-spacing:-.025em; }
.gh-insight-copy p { margin:0 0 18px; color:#bec8ce; font-size:1.02rem; line-height:1.82; }
.gh-insight-takeaway { margin-top:20px; padding:34px 36px; border:1px solid rgba(201,167,93,.32); background:rgba(201,167,93,.045); }
.gh-insight-takeaway p { margin:10px 0 0; color:#fff; font-size:1.2rem; line-height:1.55; }
.gh-insight-cta { padding:78px 0; border-top:1px solid rgba(255,255,255,.09); background:#070c10; }
.gh-insight-cta-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.gh-insight-cta h2 { margin:10px 0 0; color:#fff; font-size:clamp(2rem,3.4vw,3.7rem); line-height:1; letter-spacing:-.035em; }
.gh-insight-cta-grid > div:last-child p { color:#aebbc4; line-height:1.7; margin:0 0 25px; max-width:620px; }
@media (max-width:900px) {
  .gh-insights-hero-grid,.gh-insight-hero-grid,.gh-insights-index-head,.gh-insight-cta-grid { grid-template-columns:1fr; gap:34px; }
  .gh-insights-grid { grid-template-columns:1fr; }
  .gh-insight-body-grid { grid-template-columns:1fr; gap:42px; }
  .gh-insight-rail { position:static; }
}
@media (max-width:620px) {
  .gh-insights-hero,.gh-insight-hero { padding:64px 0 55px; }
  .gh-insights-index,.gh-insight-body { padding:58px 0 72px; }
  .gh-insight-card { min-height:0; padding:27px 24px; }
  .gh-insight-card-tag { margin-top:28px; }
  .gh-insight-takeaway { padding:26px 24px; }
}

/* 1.6.23 — Insight guidance refinement */
.gh-insight-rail a { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.08); color:#7f8d97; font-size:.72rem; line-height:1.45; text-transform:uppercase; letter-spacing:.07em; text-decoration:none; transition:color .18s ease; }
.gh-insight-rail a:hover,.gh-insight-rail a:focus { color:#c9a75d; }
.gh-insight-copy > section[id] { scroll-margin-top:125px; }
.gh-insight-back { display:inline-block; margin:18px 0 0; color:#8f9da7; font-size:.82rem; text-decoration:none; }
.gh-insight-back:hover,.gh-insight-back:focus { color:#c9a75d; }


/* =========================================================
   Ghosthawk 1.6.25 — service-to-Insight topic links
   ========================================================= */
.service-insight-link {
  border-top: 1px solid rgba(255,255,255,.10);
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.018);
}
.service-insight-link-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.8fr);
  gap: clamp(2.5rem,6vw,7rem);
  align-items: center;
  padding-top: clamp(3.5rem,7vw,6.5rem);
  padding-bottom: clamp(3.5rem,7vw,6.5rem);
}
.service-insight-link h2 {
  margin: .65rem 0 0;
  max-width: 18ch;
}
.service-insight-link h2 a {
  color: inherit;
  text-decoration: none;
}
.service-insight-link h2 a:hover,
.service-insight-link h2 a:focus-visible {
  color: var(--gold, #d5ad62);
}
.service-insight-link-copy p {
  margin: 0 0 1.25rem;
  max-width: 48rem;
}
@media (max-width: 820px) {
  .service-insight-link-grid {
    grid-template-columns: 1fr;
    gap: 1.75rem;
  }
  .service-insight-link h2 { max-width: none; }
}

/* =========================================================
   Ghosthawk 1.6.26 — compact Related Insight treatment
   ========================================================= */
.service-insight-link {
  padding: 0;
}
.service-insight-link-grid {
  padding-top: clamp(2.6rem, 4vw, 3.6rem);
  padding-bottom: clamp(2.6rem, 4vw, 3.6rem);
}
.service-insight-link h2 {
  font-size: clamp(2rem, 2.9vw, 2.95rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}
@media (max-width: 820px) {
  .service-insight-link-grid {
    padding-top: 2.35rem;
    padding-bottom: 2.35rem;
  }
  .service-insight-link h2 {
    font-size: clamp(1.85rem, 8.5vw, 2.45rem);
  }
}

/* =========================================================
   Ghosthawk 1.6.31 — public pricing page
   ========================================================= */
.gh1631-pricing { background:#060c11; }
.gh1631-price-hero {
  padding:clamp(64px,7vw,96px) 0;
  background:
    radial-gradient(circle at 78% 24%,rgba(201,161,91,.10),transparent 30%),
    linear-gradient(180deg,#08121a 0%,#060c11 100%);
  border-bottom:1px solid var(--line);
}
.gh1631-price-hero-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:clamp(48px,7vw,94px); align-items:end; }
.gh1631-price-hero h1 { margin:18px 0 0; font-size:clamp(3.4rem,6vw,6.2rem); line-height:.94; }
.gh1631-price-hero h1 span { color:var(--accent-2); }
.gh1631-price-hero-copy { padding-bottom:5px; }
.gh1631-price-hero-copy p { color:#c3ced5; font-size:1.03rem; max-width:620px; }
.gh1631-price-hero-copy .gh1631-vat-note { color:var(--accent-2); font-weight:760; }
.gh1631-price-hero-copy .button { margin-top:10px; }

.gh1631-rate-ledger { background:#081017; border-bottom:1px solid var(--line); }
.gh1631-rate-grid { display:grid; grid-template-columns:repeat(4,1fr); border-left:1px solid var(--line); }
.gh1631-rate-card { min-height:170px; padding:30px 28px; border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; }
.gh1631-rate-card span { color:#97a7b1; text-transform:uppercase; letter-spacing:.14em; font-size:.66rem; font-weight:800; }
.gh1631-rate-card strong { display:block; color:var(--accent-2); font-size:clamp(2.6rem,4vw,4.25rem); line-height:1; letter-spacing:-.05em; margin:12px 0 7px; }
.gh1631-rate-card b { color:#d9e1e5; font-size:.82rem; font-weight:650; }

.gh1631-price-detail { padding:clamp(68px,7vw,96px) 0; background:linear-gradient(180deg,#071019,#060c11); border-bottom:1px solid var(--line); }
.gh1631-price-intro { display:grid; grid-template-columns:1fr .82fr; gap:clamp(46px,7vw,90px); align-items:end; margin-bottom:46px; }
.gh1631-price-intro h2 { margin:12px 0 0; font-size:clamp(2.45rem,4vw,4.2rem); }
.gh1631-price-intro > p { color:#aebbc3; margin:0; max-width:620px; }
.gh1631-client-columns { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.gh1631-client-card { border:1px solid var(--line); background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.008)); padding:34px; }
.gh1631-client-card--consumer { box-shadow:inset 3px 0 0 rgba(201,161,91,.72); }
.gh1631-client-card--business { box-shadow:inset 3px 0 0 rgba(112,153,181,.65); }
.gh1631-card-kicker { color:var(--accent-2); text-transform:uppercase; letter-spacing:.14em; font-size:.67rem; font-weight:820; }
.gh1631-client-card--business .gh1631-card-kicker { color:#9fc1d7; }
.gh1631-client-card h3 { font-size:clamp(1.6rem,2.4vw,2.25rem); margin:10px 0 15px; }
.gh1631-client-card p { color:#afbbc3; }
.gh1631-client-card p strong { color:#eef2f4; }
.gh1631-client-card ul { list-style:none; padding:0; margin:26px 0 20px; border-top:1px solid var(--line); }
.gh1631-client-card li { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid var(--line); color:#9eadb6; font-size:.86rem; }
.gh1631-client-card li strong { color:#f0f3f5; text-align:right; }
.gh1631-small { font-size:.82rem; }

.gh1631-planned { padding:clamp(68px,7vw,96px) 0; background:radial-gradient(circle at 82% 40%,rgba(46,85,111,.11),transparent 28%),#071019; border-bottom:1px solid var(--line); }
.gh1631-planned-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(50px,7vw,96px); align-items:center; }
.gh1631-planned-copy h2 { margin:12px 0 20px; font-size:clamp(2.45rem,4vw,4rem); }
.gh1631-planned-copy p { color:#b2bec6; max-width:680px; }
.gh1631-planned-copy p strong { color:#fff; }
.gh1631-example { border:1px solid rgba(201,161,91,.34); background:linear-gradient(145deg,rgba(201,161,91,.08),rgba(255,255,255,.018)); padding:34px; }
.gh1631-example-label { color:var(--accent-2); text-transform:uppercase; letter-spacing:.16em; font-size:.66rem; font-weight:820; }
.gh1631-example h3 { margin:10px 0 22px; font-size:1.65rem; }
.gh1631-example-row,.gh1631-example-total { display:flex; justify-content:space-between; gap:24px; padding:13px 0; border-top:1px solid var(--line); color:#aebac2; }
.gh1631-example-row strong { color:#eef2f4; }
.gh1631-example-total { margin-top:4px; padding-top:17px; color:#e8eef1; }
.gh1631-example-total strong { color:var(--accent-2); font-size:1.35rem; }
.gh1631-example p { color:#94a3ad; font-size:.78rem; margin:18px 0 0; }

.gh1631-cost-factors { padding:clamp(68px,7vw,96px) 0; background:#060c11; border-bottom:1px solid var(--line); }
.gh1631-cost-head { display:grid; grid-template-columns:1fr .8fr; gap:clamp(42px,6vw,82px); align-items:end; margin-bottom:42px; }
.gh1631-cost-head h2 { margin:12px 0 0; font-size:clamp(2.35rem,3.7vw,3.9rem); }
.gh1631-cost-head > p { color:#aab7bf; margin:0; }
.gh1631-factor-grid { display:grid; grid-template-columns:repeat(3,1fr); border-left:1px solid var(--line); border-top:1px solid var(--line); }
.gh1631-factor-grid article { min-height:225px; padding:28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.gh1631-factor-grid article > span { color:var(--accent-2); font-size:.75rem; font-weight:820; letter-spacing:.12em; }
.gh1631-factor-grid h3 { margin:18px 0 10px; font-size:1.35rem; }
.gh1631-factor-grid p { color:#9eabb4; font-size:.84rem; margin:0; }

.gh1631-control { padding:clamp(58px,6vw,80px) 0; background:linear-gradient(110deg,#10110f,#071019 50%,#050a0e); border-bottom:1px solid rgba(201,161,91,.24); }
.gh1631-control-grid,.gh1631-cancellation-grid,.gh1631-price-cta-grid { display:grid; grid-template-columns:1fr .86fr; gap:clamp(48px,7vw,94px); align-items:center; }
.gh1631-control h2,.gh1631-cancellation h2,.gh1631-price-cta h2 { margin:12px 0 0; font-size:clamp(2.25rem,3.65vw,3.75rem); }
.gh1631-control-grid p,.gh1631-cancellation-grid p,.gh1631-price-cta-grid p { color:#b2bec6; }
.gh1631-control-grid .gh1631-control-strong { color:var(--accent-2); font-weight:800; margin-bottom:0; }

.gh1631-cancellation { padding:clamp(52px,5.5vw,72px) 0; background:#071019; border-bottom:1px solid var(--line); }
.gh1631-cancellation-grid strong { color:#f0f3f5; }
.gh1631-price-cta { padding:clamp(62px,6.5vw,88px) 0; background:radial-gradient(circle at 78% 45%,rgba(201,161,91,.10),transparent 28%),#060c11; }
.gh1631-price-cta-grid .button { margin-top:10px; }

.gh1631-service-price-link { background:#071019; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:34px 0; }
.gh1631-service-price-link-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(38px,6vw,78px); align-items:center; }
.gh1631-service-price-link h2 { margin:7px 0 0; font-size:clamp(1.55rem,2.35vw,2.35rem); }
.gh1631-service-price-link p { color:#a8b5bd; margin:0 0 8px; }

@media (max-width:900px) {
  .gh1631-price-hero-grid,.gh1631-price-intro,.gh1631-planned-grid,.gh1631-cost-head,.gh1631-control-grid,.gh1631-cancellation-grid,.gh1631-price-cta-grid,.gh1631-service-price-link-grid { grid-template-columns:1fr; }
  .gh1631-rate-grid { grid-template-columns:1fr 1fr; }
  .gh1631-rate-card:nth-child(2) { border-right:0; }
  .gh1631-rate-card:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .gh1631-client-columns { grid-template-columns:1fr; }
  .gh1631-factor-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:560px) {
  .gh1631-price-hero { padding-top:50px; }
  .gh1631-price-hero h1 { font-size:clamp(3rem,14vw,4.25rem); }
  .gh1631-rate-grid,.gh1631-factor-grid { grid-template-columns:1fr; }
  .gh1631-rate-card { border-right:0; border-bottom:1px solid var(--line); min-height:145px; }
  .gh1631-client-card,.gh1631-example { padding:26px 22px; }
  .gh1631-client-card li { align-items:flex-start; }
}



/* Ghosthawk 1.6.39 — customer-facing service architecture */
.gh1639-capability-intro { margin-top:clamp(54px,6vw,82px); padding-top:clamp(42px,5vw,64px); border-top:1px solid rgba(255,255,255,.12); }
.gh1639-capability-ledger { border-top-color:rgba(201,161,91,.30); }
.gh1631-price-hero { padding-top:clamp(82px,8vw,118px); }
@media (max-width:760px){ .gh1631-price-hero { padding-top:64px; } }

/* =============================================================
   GHOSTHAWK v2.0 — editorial public design system
   The v1.6 public architecture and URLs are retained; v2 reduces
   the command-interface aesthetic and moves the homepage toward
   an investigation/advisory presentation with stronger client-led
   hierarchy, photography and whitespace.
   ============================================================= */

:root {
  --gh2-ink:#071017;
  --gh2-ink-soft:#0b151e;
  --gh2-panel:#101d27;
  --gh2-text:#f4f5f3;
  --gh2-muted:#aeb8bf;
  --gh2-gold:#c9a15b;
  --gh2-gold-hi:#e0bc79;
  --gh2-line:rgba(255,255,255,.12);
  --gh2-line-soft:rgba(255,255,255,.075);
  --gh2-shell:1420px;
}

body {
  background:var(--gh2-ink);
}
body::before { display:none; }
.home .site-main { overflow:visible; }

/* v2 header: quieter and less internally focused */
.site-header {
  background:rgba(5,11,16,.965);
  border-bottom:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(18px);
}
.nav-wrap { min-height:86px; }
.brand img { width:214px !important; max-width:46vw !important; }
.tagline { display:none !important; }
.primary-menu { gap:clamp(18px,2vw,32px); }
.primary-menu a {
  padding:31px 0 29px;
  font-size:clamp(.79rem,.76vw,.9rem);
  font-weight:560;
  letter-spacing:.01em;
}
.primary-menu a::after { bottom:22px; height:1px; }

.gh2-home { color:var(--gh2-text); background:var(--gh2-ink); }
.gh2-home section { padding:0; }
.gh2-shell { width:min(var(--gh2-shell),calc(100% - 88px)); margin:0 auto; }
.gh2-eyebrow {
  margin:0 0 18px;
  color:var(--gh2-gold-hi);
  font-size:.68rem;
  line-height:1.25;
  font-weight:800;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.gh2-eyebrow-light { color:#efd197; }
.gh2-home h1,.gh2-home h2,.gh2-home h3 { text-wrap:balance; }
.gh2-home h2 {
  margin:0;
  font-size:clamp(2.35rem,4.2vw,4.85rem);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:760;
}
.gh2-text-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--gh2-gold-hi);
  font-weight:760;
  font-size:.91rem;
}
.gh2-text-link:hover { color:#f3d9a3; }

/* Hero */
.gh2-hero {
  min-height:min(800px,78vh);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-bottom:1px solid var(--gh2-line-soft);
  background:#071017;
}
.gh2-hero-media {
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:url('assets/visual/hero-operations.jpg');
  background-size:cover;
  background-position:center 48%;
  filter:saturate(.72) contrast(1.04);
}
.gh2-hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(4,9,13,.98) 0%,rgba(5,11,16,.94) 38%,rgba(6,13,18,.68) 67%,rgba(6,13,18,.35) 100%),
    linear-gradient(180deg,rgba(5,10,15,.08),rgba(5,10,15,.54));
}
.gh2-hero-grid {
  min-height:min(800px,78vh);
  display:grid;
  grid-template-columns:minmax(0,760px) 1fr;
  align-items:end;
  gap:80px;
  padding:clamp(96px,11vh,150px) 0 54px;
}
.gh2-hero-copy { align-self:center; padding-bottom:26px; }
.gh2-hero h1 {
  margin:0 0 28px;
  max-width:800px;
  color:#fff;
  font-size:clamp(4rem,6.8vw,7.4rem);
  line-height:.91;
  letter-spacing:-.064em;
  font-weight:820;
}
.gh2-hero h1 span { color:var(--gh2-gold-hi); }
.gh2-hero-lead {
  max-width:690px;
  margin:0;
  color:#d0d7db;
  font-size:clamp(1.02rem,1.3vw,1.24rem);
  line-height:1.65;
}
.gh2-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:34px; }
.gh2-button {
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 24px;
  border:1px solid rgba(255,255,255,.27);
  color:#fff;
  font-size:.88rem;
  font-weight:800;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.gh2-button:hover { transform:translateY(-1px); }
.gh2-button-primary { background:var(--gh2-gold); border-color:var(--gh2-gold); color:#081017; }
.gh2-button-primary:hover { background:var(--gh2-gold-hi); border-color:var(--gh2-gold-hi); color:#081017; }
.gh2-button-ghost:hover { border-color:var(--gh2-gold-hi); color:var(--gh2-gold-hi); }
.gh2-hero-caption {
  align-self:end;
  justify-self:end;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  justify-content:flex-end;
  max-width:560px;
}
.gh2-hero-caption span {
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.32);
  color:#d8dfe3;
  font-size:.72rem;
  letter-spacing:.085em;
  text-transform:uppercase;
}

/* shared editorial section heading */
.gh2-section-head {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.7fr);
  gap:80px;
  align-items:end;
}
.gh2-section-head > p {
  margin:0 0 8px;
  color:var(--gh2-muted);
  line-height:1.72;
  font-size:1rem;
}
.gh2-section-head > .gh2-text-link { justify-self:end; align-self:end; margin-bottom:8px; }

/* Situations */
.gh2-situations { padding:clamp(88px,8vw,132px) 0 clamp(96px,9vw,148px) !important; background:#0a131b; }
.gh2-situation-list { margin-top:54px; border-top:1px solid var(--gh2-line); }
.gh2-situation-list a {
  display:grid;
  grid-template-columns:58px minmax(250px,.82fr) minmax(280px,1fr) 30px;
  gap:28px;
  align-items:center;
  padding:24px 0;
  border-bottom:1px solid var(--gh2-line-soft);
  color:var(--gh2-text);
  transition:padding-left .18s ease,background .18s ease;
}
.gh2-situation-list a:hover { padding-left:10px; color:#fff; }
.gh2-situation-list span { color:var(--gh2-gold); font-size:.7rem; letter-spacing:.14em; font-weight:850; }
.gh2-situation-list strong { font-size:clamp(1.18rem,1.6vw,1.55rem); line-height:1.25; font-weight:710; }
.gh2-situation-list small { color:#aab5bc; font-size:.9rem; line-height:1.55; }
.gh2-situation-list b { color:var(--gh2-gold-hi); font-size:1.2rem; font-weight:500; }

/* Two practices */
.gh2-practices { padding:clamp(92px,9vw,150px) 0 !important; background:#071017; }
.gh2-practice {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  min-height:520px;
  border-top:1px solid var(--gh2-line);
}
.gh2-practice:last-child { border-bottom:1px solid var(--gh2-line); }
.gh2-practice-media { min-height:520px; overflow:hidden; background:#111b23; }
.gh2-practice-media img { width:100%; height:100%; min-height:520px; object-fit:cover; object-position:center; display:block; filter:saturate(.78) contrast(1.03); transition:transform .7s ease; }
.gh2-practice:hover .gh2-practice-media img { transform:scale(1.015); }
.gh2-practice-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(50px,6vw,86px);
  background:#0c161e;
}
.gh2-practice-intel .gh2-practice-copy { background:#0a141c; }
.gh2-practice-copy h2 { font-size:clamp(2.5rem,4.3vw,5rem); max-width:650px; }
.gh2-practice-copy > p:not(.gh2-eyebrow) { max-width:620px; margin:26px 0 28px; color:#b8c3c9; line-height:1.72; }

/* Credibility */
.gh2-credibility { padding:clamp(96px,9vw,148px) 0 !important; background:#f0ede5; color:#101820; }
.gh2-credibility-grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:clamp(70px,8vw,130px); align-items:start; }
.gh2-credibility .gh2-eyebrow { color:#7f642f; }
.gh2-credibility h2 { color:#0f171d; font-size:clamp(2.65rem,4.35vw,5rem); }
.gh2-credibility-statement > p:last-child { max-width:610px; margin:28px 0 0; color:#536067; line-height:1.72; }
.gh2-credibility-list { list-style:none; margin:0; padding:0; border-top:1px solid rgba(15,23,29,.2); }
.gh2-credibility-list li { display:grid; grid-template-columns:50px 1fr; gap:24px; padding:24px 0; border-bottom:1px solid rgba(15,23,29,.15); }
.gh2-credibility-list li > span { color:#98773b; font-size:.72rem; font-weight:850; letter-spacing:.13em; padding-top:5px; }
.gh2-credibility-list h3 { margin:0 0 7px; color:#101820; font-size:1.3rem; font-weight:760; }
.gh2-credibility-list p { margin:0; color:#57636a; line-height:1.63; }

/* Selected work */
.gh2-selected-work { padding:clamp(92px,8vw,132px) 0 !important; background:#081119; }
.gh2-work-list { margin-top:48px; border-top:1px solid var(--gh2-line); }
.gh2-work-list a {
  display:grid;
  grid-template-columns:minmax(210px,.5fr) minmax(330px,1fr) 34px;
  gap:38px;
  align-items:center;
  padding:27px 0;
  border-bottom:1px solid var(--gh2-line-soft);
  color:#fff;
}
.gh2-work-list a > span { color:var(--gh2-gold-hi); font-size:.74rem; font-weight:780; letter-spacing:.085em; text-transform:uppercase; }
.gh2-work-list strong { font-size:clamp(1.2rem,1.85vw,1.72rem); font-weight:650; }
.gh2-work-list b { color:var(--gh2-gold-hi); font-weight:500; font-size:1.2rem; }

/* Insights */
.gh2-insights { padding:clamp(94px,9vw,148px) 0 !important; background:#0c161e; }
.gh2-insight-grid { margin-top:52px; display:grid; grid-template-columns:1.35fr .825fr .825fr; border-top:1px solid var(--gh2-line); border-bottom:1px solid var(--gh2-line); }
.gh2-insight { padding:34px 36px 38px; min-height:360px; display:flex; flex-direction:column; }
.gh2-insight + .gh2-insight { border-left:1px solid var(--gh2-line); }
.gh2-insight:first-child { padding-left:0; padding-right:54px; }
.gh2-insight:last-child { padding-right:0; }
.gh2-insight-tag { margin:0 0 34px; color:var(--gh2-gold); font-size:.65rem; letter-spacing:.11em; text-transform:uppercase; font-weight:800; }
.gh2-insight h3 { margin:0 0 18px; font-size:clamp(1.35rem,2vw,2rem); line-height:1.15; font-weight:700; }
.gh2-insight-feature h3 { font-size:clamp(1.8rem,2.8vw,3rem); }
.gh2-insight h3 a { color:#fff; }
.gh2-insight > p:not(.gh2-insight-tag) { color:#aeb9c0; font-size:.91rem; line-height:1.65; }
.gh2-insight .gh2-text-link { margin-top:auto; padding-top:22px; }

/* Dual conversion route */
.gh2-contact-choice { background:#f0ede5; color:#111a20; border-top:1px solid rgba(0,0,0,.08); }
.gh2-contact-grid { display:grid; grid-template-columns:.8fr 1fr 1fr; min-height:390px; }
.gh2-contact-intro { padding:68px 58px 68px 0; display:flex; flex-direction:column; justify-content:center; }
.gh2-contact-choice .gh2-eyebrow { color:#846831; }
.gh2-contact-intro h2 { color:#111a20; font-size:clamp(2.4rem,4.1vw,4.6rem); }
.gh2-contact-route { padding:68px 52px; border-left:1px solid rgba(17,26,32,.16); display:flex; flex-direction:column; justify-content:center; }
.gh2-contact-route > span { color:#776138; font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; font-weight:800; }
.gh2-contact-route h3 { margin:22px 0 14px; color:#111a20; font-size:clamp(1.45rem,2.2vw,2.25rem); line-height:1.1; }
.gh2-contact-route p { color:#58646a; line-height:1.6; }
.gh2-contact-route a { display:flex; justify-content:space-between; gap:30px; align-items:center; margin-top:20px; padding-top:18px; border-top:1px solid rgba(17,26,32,.18); color:#171d20; font-weight:800; }
.gh2-contact-urgent { background:#e7dfd0; }
.gh2-contact-urgent a { color:#7e5e25; }

/* Footer v2: retain legal content but calm the visual shell */
.site-footer { border-top:1px solid var(--gh2-line); background:#050b10; }
.site-footer .container { width:min(var(--gh2-shell),calc(100% - 88px)); }
.footer-grid { padding-top:50px; }
.footer-legal { color:#78858e; }

/* Soften legacy public pages without changing their content/URLs. */
:not(.gh2-home) .page-hero,
.gh14-hub-hero,
.gh1631-price-hero { background:#09131b; }
.page-hero::after { opacity:.35; }
.gh14-hub-hero::before,
.gh14-hub-hero::after { opacity:.32; }
.gh14-hub-services,
.gh1631-price-detail,
.gh1631-cost-factors { background:#0a141c; }

@media (max-width:1100px) {
  .gh2-shell,.site-footer .container { width:min(100% - 56px,var(--gh2-shell)); }
  .gh2-hero-grid { grid-template-columns:1fr; gap:30px; }
  .gh2-hero-caption { justify-self:start; justify-content:flex-start; }
  .gh2-section-head { grid-template-columns:1fr 1fr; gap:50px; }
  .gh2-situation-list a { grid-template-columns:44px minmax(220px,.8fr) minmax(260px,1fr) 24px; gap:20px; }
  .gh2-practice { grid-template-columns:1fr 1fr; }
  .gh2-practice-copy { padding:48px; }
  .gh2-credibility-grid { gap:62px; }
  .gh2-insight-grid { grid-template-columns:1fr 1fr; }
  .gh2-insight:first-child { grid-column:1 / -1; border-bottom:1px solid var(--gh2-line); padding-left:0; padding-right:0; min-height:300px; }
  .gh2-insight:nth-child(2) { border-left:0; padding-left:0; }
  .gh2-contact-grid { grid-template-columns:1fr 1fr; }
  .gh2-contact-intro { grid-column:1 / -1; padding-bottom:44px; }
  .gh2-contact-route:first-of-type { border-left:0; }
}

@media (max-width:780px) {
  .gh2-shell,.site-footer .container { width:calc(100% - 38px); }
  .nav-wrap { min-height:76px; }
  .brand img { width:188px !important; }
  .gh2-hero { min-height:700px; }
  .gh2-hero-grid { min-height:700px; padding:92px 0 32px; }
  .gh2-hero::before { background:linear-gradient(90deg,rgba(4,9,13,.97),rgba(5,11,16,.82)),linear-gradient(180deg,rgba(5,10,15,.05),rgba(5,10,15,.62)); }
  .gh2-hero h1 { font-size:clamp(3.2rem,13.3vw,5rem); }
  .gh2-hero-caption { gap:10px 16px; }
  .gh2-section-head { grid-template-columns:1fr; gap:26px; }
  .gh2-section-head > .gh2-text-link { justify-self:start; }
  .gh2-situation-list a { grid-template-columns:34px 1fr 24px; padding:22px 0; }
  .gh2-situation-list small { grid-column:2 / 3; }
  .gh2-situation-list b { grid-column:3; grid-row:1 / 3; }
  .gh2-practice,.gh2-practice-intel { grid-template-columns:1fr; }
  .gh2-practice-intel .gh2-practice-media { order:1; }
  .gh2-practice-intel .gh2-practice-copy { order:2; }
  .gh2-practice-media,.gh2-practice-media img { min-height:360px; }
  .gh2-practice-copy { padding:42px 0; background:transparent !important; }
  .gh2-credibility-grid { grid-template-columns:1fr; gap:54px; }
  .gh2-work-list a { grid-template-columns:1fr 28px; gap:8px 20px; }
  .gh2-work-list a > span { grid-column:1; }
  .gh2-work-list strong { grid-column:1; }
  .gh2-work-list b { grid-column:2; grid-row:1 / 3; align-self:center; }
  .gh2-insight-grid { grid-template-columns:1fr; }
  .gh2-insight,.gh2-insight:first-child,.gh2-insight:nth-child(2),.gh2-insight:last-child { padding:30px 0; border-left:0; border-bottom:1px solid var(--gh2-line); min-height:0; }
  .gh2-insight:last-child { border-bottom:0; }
  .gh2-contact-grid { grid-template-columns:1fr; }
  .gh2-contact-intro { grid-column:auto; padding:54px 0 40px; }
  .gh2-contact-route { border-left:0; border-top:1px solid rgba(17,26,32,.16); padding:44px 0; }
  .gh2-contact-urgent { margin-left:-19px; margin-right:-19px; padding-left:19px; padding-right:19px; }
}

/* =============================================================
   GHOSTHAWK v2.0.1 — proportion, rhythm and tonal refinement
   Keeps the v2 architecture; reduces presentation-deck spacing,
   moderates headline scale and cools the light editorial sections.
   ============================================================= */

/* Calm the hero without losing impact. */
.gh2-hero {
  min-height:min(720px,72vh);
}
.gh2-hero-grid {
  min-height:min(720px,72vh);
  padding:clamp(76px,9vh,118px) 0 42px;
}
.gh2-hero-copy { padding-bottom:16px; }
.gh2-hero h1 {
  margin-bottom:24px;
  max-width:760px;
  font-size:clamp(3.65rem,5.8vw,6.55rem);
  line-height:.92;
}
.gh2-hero-lead { max-width:650px; }
.gh2-actions { margin-top:28px; }

/* Headings frame the content instead of becoming the content. */
.gh2-home h2 {
  font-size:clamp(2.2rem,3.65vw,4.25rem);
  line-height:1.025;
}

/* Reduce the combined top/bottom whitespace between major sections. */
.gh2-situations { padding:clamp(68px,6vw,94px) 0 clamp(72px,6.5vw,104px) !important; }
.gh2-situation-list { margin-top:40px; }
.gh2-situation-list a { padding:19px 0; }
.gh2-situation-list strong { font-size:clamp(1.12rem,1.45vw,1.42rem); }
.gh2-situation-list small { font-size:.87rem; }

.gh2-practices { padding:clamp(68px,6.5vw,106px) 0 !important; }
.gh2-practice,
.gh2-practice-media { min-height:480px; }
.gh2-practice-media img { min-height:480px; }
.gh2-practice-copy { padding:clamp(44px,5vw,72px); }
.gh2-practice-copy h2 { font-size:clamp(2.35rem,3.7vw,4.45rem); }
.gh2-practice-copy > p:not(.gh2-eyebrow) { margin:22px 0 24px; }

/* Cooler stone treatment: still a deliberate light break, but less TLPC-like. */
.gh2-credibility {
  padding:clamp(74px,6.7vw,108px) 0 !important;
  background:#e3e3df;
  color:#0d1820;
}
.gh2-credibility-grid { gap:clamp(54px,6.5vw,98px); }
.gh2-credibility .gh2-eyebrow { color:#80642f; }
.gh2-credibility h2 {
  color:#0b1720;
  max-width:600px;
  font-size:clamp(2.35rem,3.65vw,4.15rem);
}
.gh2-credibility-statement > p:last-child { margin-top:22px; color:#4e5d65; }
.gh2-credibility-list { border-top-color:rgba(11,23,32,.22); }
.gh2-credibility-list li { padding:20px 0; border-bottom-color:rgba(11,23,32,.15); }
.gh2-credibility-list p { color:#526169; }

.gh2-selected-work { padding:clamp(70px,6.2vw,98px) 0 !important; }
.gh2-work-list { margin-top:36px; }
.gh2-work-list a { padding:21px 0; }
.gh2-work-list strong { font-size:clamp(1.15rem,1.6vw,1.55rem); }

.gh2-insights { padding:clamp(72px,6.5vw,104px) 0 !important; }
.gh2-insight-grid { margin-top:38px; }
.gh2-insight { min-height:330px; padding-top:30px; padding-bottom:32px; }
.gh2-insight-tag { margin-bottom:26px; }
.gh2-insight-feature h3 { font-size:clamp(1.7rem,2.45vw,2.65rem); }

/* Conversion choices are the visual destination; the intro no longer overwhelms them. */
.gh2-contact-choice { background:#e3e3df; }
.gh2-contact-grid { min-height:330px; grid-template-columns:.72fr 1fr 1fr; }
.gh2-contact-intro { padding:54px 48px 54px 0; }
.gh2-contact-intro h2 {
  max-width:470px;
  font-size:clamp(2.15rem,3.35vw,3.75rem);
}
.gh2-contact-route { padding:54px 46px; }
.gh2-contact-route h3 { font-size:clamp(1.4rem,1.95vw,2.05rem); }
.gh2-contact-urgent { background:#d7d4cc; }

@media (max-width:1100px) {
  .gh2-hero,.gh2-hero-grid { min-height:min(680px,74vh); }
  .gh2-practice,.gh2-practice-media,.gh2-practice-media img { min-height:440px; }
  .gh2-contact-intro { padding-bottom:34px; }
}

@media (max-width:780px) {
  .gh2-hero { min-height:640px; }
  .gh2-hero-grid { min-height:640px; padding:78px 0 28px; }
  .gh2-hero h1 { font-size:clamp(3rem,12.3vw,4.55rem); }
  .gh2-situations { padding:58px 0 66px !important; }
  .gh2-situation-list { margin-top:30px; }
  .gh2-situation-list a { padding:18px 0; }
  .gh2-practices { padding:58px 0 66px !important; }
  .gh2-practice-media,.gh2-practice-media img { min-height:330px; }
  .gh2-practice-copy { padding:36px 0; }
  .gh2-credibility { padding:62px 0 68px !important; }
  .gh2-selected-work { padding:60px 0 68px !important; }
  .gh2-insights { padding:60px 0 68px !important; }
  .gh2-contact-intro { padding:46px 0 34px; }
  .gh2-contact-route { padding:38px 0; }
}


/* =============================================================
   GHOSTHAWK v2.0.2 — final homepage polish
   Removes non-essential hero micro-labels, tightens the remaining
   section pauses, makes the sticky shell slimmer, and gives I&I a
   more analytical visual treatment without returning to a dashboard UI.
   ============================================================= */

/* A slightly slimmer persistent header leaves more of the work visible. */
.nav-wrap { min-height:76px; }
.brand img { width:205px !important; }
.primary-menu a { padding:26px 0 24px; }
.primary-menu a::after { bottom:17px; }

/* With the hero principles removed, the hero can end more cleanly. */
.gh2-hero { min-height:min(690px,70vh); }
.gh2-hero-grid {
  min-height:min(690px,70vh);
  grid-template-columns:minmax(0,760px) 1fr;
  padding:clamp(72px,8.2vh,106px) 0 34px;
}
.gh2-hero-copy { padding-bottom:8px; }

/* Reduce the last presentation-deck pauses without compressing the ledgers. */
.gh2-situations { padding:clamp(62px,5.5vw,84px) 0 clamp(46px,4.4vw,66px) !important; }
.gh2-practices { padding:clamp(46px,4.4vw,66px) 0 !important; }
.gh2-credibility { padding:clamp(60px,5.2vw,78px) 0 !important; }
.gh2-selected-work { padding:clamp(58px,5vw,76px) 0 !important; }
.gh2-insights { padding:clamp(60px,5.2vw,80px) 0 !important; }

/* The I&I practice uses a restrained analytical visual rather than a patrol/security cue. */
.gh2-practice-intel .gh2-practice-media {
  position:relative;
  background:#08121a;
}
.gh2-practice-intel .gh2-practice-media::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(6,13,18,.08),rgba(6,13,18,.24));
}
.gh2-practice-intel .gh2-practice-media img {
  object-fit:cover;
  object-position:center;
  filter:saturate(.72) contrast(1.02) brightness(.92);
}

/* Shorter close: the two choices now carry the hierarchy. */
.gh2-contact-grid { min-height:310px; grid-template-columns:.66fr 1fr 1fr; }
.gh2-contact-intro { padding:48px 42px 48px 0; }
.gh2-contact-intro h2 {
  max-width:390px;
  font-size:clamp(2.05rem,2.95vw,3.35rem);
  line-height:1.02;
}
.gh2-contact-route { padding:48px 46px; }

@media (max-width:1180px) {
  .site-navigation { top:76px; }
}

@media (max-width:1100px) {
  .gh2-hero,.gh2-hero-grid { min-height:min(650px,72vh); }
  .gh2-contact-grid { grid-template-columns:1fr 1fr; }
  .gh2-contact-intro { grid-column:1 / -1; }
}

@media (max-width:780px) {
  .nav-wrap { min-height:70px; }
  .brand img { width:178px !important; }
  .site-navigation { top:70px; }
  .gh2-hero { min-height:610px; }
  .gh2-hero-grid { min-height:610px; padding:70px 0 24px; }
  .gh2-situations { padding:54px 0 52px !important; }
  .gh2-practices { padding:48px 0 54px !important; }
  .gh2-credibility { padding:56px 0 58px !important; }
  .gh2-selected-work { padding:54px 0 58px !important; }
  .gh2-insights { padding:54px 0 58px !important; }
  .gh2-contact-intro { padding:40px 0 28px; }
  .gh2-contact-route { padding:34px 0; }
}

/* =============================================================
   GHOSTHAWK v2.1 — full public-site editorial system
   Carries the approved v2 homepage language through Services,
   practice hubs, individual services, Markets, About, Partnerships,
   Pricing, Insights and the guided enquiry journey.
   ============================================================= */

.ghv2-page {
  --ghv2-stone:#e3e3df;
  --ghv2-stone-2:#d6d4cd;
  --ghv2-dark:#071017;
  --ghv2-dark-2:#0a151d;
  --ghv2-copy:#aeb8bf;
  color:var(--gh2-text);
  background:var(--ghv2-dark);
  overflow:hidden;
}
.ghv2-page h1,.ghv2-page h2,.ghv2-page h3 { margin-top:0; letter-spacing:-.035em; }
.ghv2-page p { color:var(--ghv2-copy); }
.ghv2-page a { text-decoration:none; }
.ghv2-breadcrumb {
  display:inline-flex; margin-bottom:28px; color:#d3d9dd; font-size:.76rem;
  font-weight:750; letter-spacing:.08em; text-transform:uppercase;
}
.ghv2-breadcrumb:hover { color:var(--gh2-gold-hi); }
.ghv2-dark-link { color:#10202b !important; }
.ghv2-dark-link:hover { color:#7b5c25 !important; }

/* Shared editorial heroes */
.ghv2-hero,.ghv2-service-hero,.ghv2-article-hero { background:#071017; }
.ghv2-hero { padding:clamp(92px,8vw,132px) 0 clamp(80px,7vw,118px); }
.ghv2-hero-grid {
  display:grid; grid-template-columns:minmax(0,1.02fr) minmax(320px,.72fr);
  gap:clamp(72px,8vw,138px); align-items:end;
}
.ghv2-hero h1 {
  margin:0; max-width:850px; color:#f6f5f1;
  font-size:clamp(3.4rem,5.6vw,6.35rem); line-height:.93;
}
.ghv2-hero h1 span { color:var(--gh2-gold-hi); }
.ghv2-hero-copy { padding-bottom:8px; }
.ghv2-hero-copy p { margin:0 0 18px; max-width:660px; font-size:1.08rem; line-height:1.75; }
.ghv2-hero-copy .gh2-text-link { margin-top:16px; }

/* Shared section heads and ledgers */
.ghv2-ledger-section,.ghv2-price-section,.ghv2-related { padding:clamp(72px,6vw,102px) 0; background:#09131b; }
.ghv2-section-head,.ghv2-subhead {
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);
  gap:clamp(56px,7vw,116px); align-items:end;
}
.ghv2-section-head h2,.ghv2-subhead h2 {
  margin:0; max-width:720px; color:#f5f4f0; font-size:clamp(2.45rem,4vw,4.8rem); line-height:1.01;
}
.ghv2-section-head > p,.ghv2-subhead > p { margin:0; max-width:650px; font-size:1rem; line-height:1.75; }
.ghv2-subhead { margin-top:82px; }
.ghv2-ledger { margin-top:42px; border-top:1px solid var(--gh2-line); }
.ghv2-ledger > a,.ghv2-static-row {
  display:grid; grid-template-columns:58px minmax(260px,.85fr) minmax(320px,1fr) 28px;
  gap:24px; align-items:center; min-height:92px; padding:20px 0;
  border-bottom:1px solid var(--gh2-line-soft); color:#f4f4f1;
}
.ghv2-ledger > a:hover { background:rgba(255,255,255,.018); }
.ghv2-ledger span,.ghv2-static-row > span { color:var(--gh2-gold); font-size:.7rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.ghv2-ledger strong,.ghv2-static-row strong { font-size:clamp(1.13rem,1.55vw,1.5rem); line-height:1.25; }
.ghv2-ledger small,.ghv2-static-row small { color:#aab7bf; font-size:.9rem; line-height:1.6; }
.ghv2-ledger b { color:var(--gh2-gold-hi); font-size:1.18rem; font-weight:500; text-align:right; }

/* Large practice cards */
.ghv2-practice-pair { padding:clamp(58px,5vw,82px) 0; background:#061017; }
.ghv2-practice-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--gh2-line); border-bottom:1px solid var(--gh2-line); }
.ghv2-practice-card { display:grid; grid-template-rows:320px 1fr; color:#f5f4f1; background:#0b151e; min-width:0; }
.ghv2-practice-card + .ghv2-practice-card { border-left:1px solid var(--gh2-line); }
.ghv2-practice-card-media { background:#071017; overflow:hidden; }
.ghv2-practice-card-media img { width:100%; height:100%; display:block; object-fit:cover; filter:saturate(.82) brightness(.82); }
.ghv2-practice-card:nth-child(2) .ghv2-practice-card-media img { object-fit:cover; filter:saturate(.74) brightness(.92); }
.ghv2-practice-card-copy { padding:44px 46px 50px; }
.ghv2-practice-card-copy h2 { margin:8px 0 18px; font-size:clamp(2rem,3vw,3.45rem); line-height:1.02; }
.ghv2-practice-card-copy p { margin-bottom:28px; }
.ghv2-practice-card-copy strong { color:var(--gh2-gold-hi); }
.ghv2-practice-card:hover strong { color:#f3cf8e; }

/* Light editorial strips */
.ghv2-light-strip,.ghv2-credibility,.ghv2-purpose,.ghv2-method-price,.ghv2-about-company,.ghv2-close--light,.ghv2-contact-routes,.ghv2-enquiry-notice {
  background:var(--ghv2-stone); color:#0b1720;
}
.ghv2-light-strip { padding:clamp(68px,5.5vw,92px) 0; }
.ghv2-light-strip-grid,.ghv2-about-story-grid,.ghv2-about-company-grid,.ghv2-related-insight-grid,.ghv2-close-grid {
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr); gap:clamp(60px,7vw,120px); align-items:start;
}
.ghv2-light-strip h2,.ghv2-about-company h2,.ghv2-close--light h2 { color:#0b1720; margin:0; font-size:clamp(2.25rem,3.7vw,4.4rem); line-height:1.02; }
.ghv2-light-strip p,.ghv2-about-company p,.ghv2-close--light p { color:#506069; }
.ghv2-light-strip .gh2-eyebrow,.ghv2-credibility .gh2-eyebrow,.ghv2-purpose .gh2-eyebrow,.ghv2-method-price .gh2-eyebrow,.ghv2-about-company .gh2-eyebrow,.ghv2-close--light .gh2-eyebrow,.ghv2-contact-routes .gh2-eyebrow,.ghv2-enquiry-notice .gh2-eyebrow { color:#80642f; }

/* Practice hubs */
.ghv2-split-hero { padding:58px 0; background:#071017; }
.ghv2-split-hero-grid { display:grid; grid-template-columns:1fr 1fr; min-height:610px; border:1px solid var(--gh2-line); }
.ghv2-split-hero-copy { padding:clamp(62px,6vw,96px); display:flex; flex-direction:column; justify-content:center; }
.ghv2-split-hero-copy h1 { margin:0 0 24px; font-size:clamp(3.2rem,5vw,5.9rem); line-height:.95; color:#f6f5f2; }
.ghv2-split-hero-copy > p:not(.gh2-eyebrow) { max-width:630px; font-size:1.06rem; line-height:1.72; }
.ghv2-split-hero-media { min-height:610px; background:#08121a; overflow:hidden; }
.ghv2-split-hero-media img { width:100%; height:100%; min-height:610px; object-fit:cover; display:block; filter:saturate(.78) brightness(.82); }
.ghv2-division--intel .ghv2-split-hero-media img { filter:saturate(.72) brightness(.94); }

/* Credibility blocks */
.ghv2-credibility { padding:clamp(74px,6vw,106px) 0; }
.ghv2-credibility-grid { display:grid; grid-template-columns:.78fr 1.08fr; gap:clamp(70px,8vw,132px); }
.ghv2-credibility h2 { margin:8px 0 24px; max-width:620px; color:#0b1720; font-size:clamp(2.5rem,4vw,4.65rem); line-height:1.02; }
.ghv2-credibility-grid > div > p:last-child { color:#516069; max-width:630px; }
.ghv2-credibility ol { list-style:none; margin:0; padding:0; border-top:1px solid rgba(11,23,32,.2); }
.ghv2-credibility li { display:grid; grid-template-columns:58px 1fr; gap:22px; padding:24px 0; border-bottom:1px solid rgba(11,23,32,.15); }
.ghv2-credibility li > span { color:#88692e; font-size:.68rem; font-weight:850; letter-spacing:.13em; }
.ghv2-credibility h3 { margin:0 0 8px; color:#0b1720; font-size:1.3rem; }
.ghv2-credibility li p { margin:0; color:#526169; }
.ghv2-credibility--compact { padding:68px 0; }

/* Close / CTA */
.ghv2-close { padding:clamp(72px,6vw,106px) 0; background:#061017; }
.ghv2-close h2 { margin:0; max-width:760px; font-size:clamp(2.55rem,4.3vw,5.05rem); line-height:1; color:#f5f4f0; }
.ghv2-close-grid > div:last-child { display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
.ghv2-close-grid p { margin-top:0; max-width:620px; }
.ghv2-close--light { background:var(--ghv2-stone); }
.ghv2-close--light h2 { color:#0b1720; }

/* Individual service pages */
.ghv2-service-hero { padding:clamp(82px,7vw,118px) 0; }
.ghv2-service-hero-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.72fr); gap:clamp(64px,7vw,116px); align-items:start; }
.ghv2-service-hero h1 { margin:0 0 30px; max-width:900px; font-size:clamp(3.35rem,5.35vw,6.1rem); line-height:.94; color:#f6f5f1; }
.ghv2-hero-statement { max-width:860px; margin:0; color:#d7dde0 !important; font-size:clamp(1.35rem,2.1vw,2rem); line-height:1.42; }
.ghv2-service-hero-side > p { margin:26px 0; line-height:1.75; }
.ghv2-service-visual { height:270px; border:1px solid var(--gh2-line); background:#08131b; overflow:hidden; }
.ghv2-service-visual img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.76) brightness(.86); }
.ghv2-service--intel .ghv2-service-visual img { filter:saturate(.68) brightness(.95); }
.ghv2-purpose { padding:clamp(64px,5.5vw,88px) 0; }
.ghv2-purpose-grid { margin-top:28px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(11,23,32,.2); }
.ghv2-purpose-grid > div { padding:28px 28px 10px 0; border-right:1px solid rgba(11,23,32,.14); }
.ghv2-purpose-grid > div + div { padding-left:28px; }
.ghv2-purpose-grid > div:last-child { border-right:0; }
.ghv2-purpose-grid span { display:block; margin-bottom:44px; color:#80642f; font-size:.7rem; font-weight:850; letter-spacing:.14em; }
.ghv2-purpose-grid strong { display:block; color:#0b1720; font-size:clamp(1.45rem,2.1vw,2.25rem); line-height:1.2; }
.ghv2-scope { padding:clamp(72px,6vw,102px) 0; background:#09131b; }
.ghv2-scope-list { margin-top:44px; border-top:1px solid var(--gh2-line); }
.ghv2-scope-list > div { display:grid; grid-template-columns:58px minmax(240px,.55fr) 1fr; gap:26px; padding:28px 0; border-bottom:1px solid var(--gh2-line-soft); }
.ghv2-scope-list span { color:var(--gh2-gold); font-size:.7rem; font-weight:850; letter-spacing:.13em; }
.ghv2-scope-list h3 { margin:0; color:#f5f4f0; font-size:1.45rem; }
.ghv2-scope-list p { margin:0; max-width:760px; }
.ghv2-method-price { padding:clamp(70px,6vw,100px) 0; }
.ghv2-method-price-grid { display:grid; grid-template-columns:1fr .72fr; gap:clamp(72px,8vw,140px); }
.ghv2-method-price h2 { color:#0b1720; font-size:clamp(2.4rem,3.8vw,4.4rem); line-height:1.02; }
.ghv2-method-list { border-top:1px solid rgba(11,23,32,.2); }
.ghv2-method-list > div { display:grid; grid-template-columns:52px 1fr; gap:18px; padding:16px 0; border-bottom:1px solid rgba(11,23,32,.13); }
.ghv2-method-list span { color:#80642f; font-size:.68rem; font-weight:850; }
.ghv2-method-list strong { color:#20303a; font-size:.98rem; }
.ghv2-price-card { align-self:start; background:#d5d3cb; padding:44px; border-left:4px solid #b68b44; }
.ghv2-price-card h3 { color:#0b1720; font-size:clamp(1.8rem,2.7vw,2.8rem); line-height:1.08; }
.ghv2-price-card p { color:#4c5b63; }
.ghv2-related-insight { padding:clamp(68px,5.5vw,92px) 0; background:#0b151e; }
.ghv2-related-insight h2 { color:#f5f4f0; font-size:clamp(2.15rem,3.45vw,4rem); line-height:1.04; }
.ghv2-related-insight p { margin-top:0; }
.ghv2-related { padding-top:66px; }
.ghv2-ledger--related { margin-top:34px; }

/* About */
.ghv2-about-story { padding:clamp(76px,6vw,106px) 0; background:#09131b; }
.ghv2-about-story h2,.ghv2-about-company h2 { margin:0; font-size:clamp(2.5rem,4vw,4.7rem); line-height:1.02; }
.ghv2-about-story h2 { color:#f5f4f0; }
.ghv2-about-story p { margin-top:0; font-size:1.02rem; line-height:1.8; }
.ghv2-about-company { padding:clamp(72px,6vw,102px) 0; }

/* Pricing */
.ghv2-price-section--alt { background:#071017; padding-top:68px; }
.ghv2-price-ledger { margin-top:42px; border-top:1px solid var(--gh2-line); }
.ghv2-price-ledger > div { display:grid; grid-template-columns:58px minmax(280px,.9fr) minmax(300px,1fr) 190px; gap:24px; align-items:center; padding:22px 0; border-bottom:1px solid var(--gh2-line-soft); }
.ghv2-price-ledger span { color:var(--gh2-gold); font-size:.7rem; font-weight:850; letter-spacing:.13em; }
.ghv2-price-ledger strong { color:#f5f4f0; font-size:1.22rem; line-height:1.3; }
.ghv2-price-ledger small { color:#aab7bf; line-height:1.55; }
.ghv2-price-ledger b { color:var(--gh2-gold-hi); text-align:right; font-size:1.02rem; }

/* Insights landing and articles */
.ghv2-insights-index { padding:clamp(72px,6vw,104px) 0; background:#09131b; }
.ghv2-insights-list { border-top:1px solid var(--gh2-line); }
.ghv2-insights-list > a { display:grid; grid-template-columns:58px 1fr 28px; gap:28px; padding:38px 0; border-bottom:1px solid var(--gh2-line-soft); color:#f5f4f0; }
.ghv2-insights-list > a > span { color:var(--gh2-gold); font-size:.72rem; font-weight:850; letter-spacing:.13em; }
.ghv2-insights-list small { color:var(--gh2-gold-hi); text-transform:uppercase; letter-spacing:.09em; font-size:.68rem; font-weight:800; }
.ghv2-insights-list h2 { margin:10px 0 14px; font-size:clamp(1.75rem,2.75vw,3rem); line-height:1.08; }
.ghv2-insights-list p { margin:0; max-width:900px; }
.ghv2-insights-list b { color:var(--gh2-gold-hi); font-size:1.2rem; }
.ghv2-article-hero { padding:clamp(88px,7vw,122px) 0; }
.ghv2-article-hero-grid { display:grid; grid-template-columns:1.1fr .62fr; gap:clamp(72px,8vw,138px); align-items:end; }
.ghv2-article-hero h1 { margin:0; color:#f6f5f1; font-size:clamp(3.1rem,5vw,5.75rem); line-height:.96; }
.ghv2-article-hero-grid > div:last-child p { font-size:1.08rem; line-height:1.75; }
.ghv2-article-body { padding:clamp(72px,6vw,104px) 0; background:#e3e3df; color:#0b1720; }
.ghv2-article-grid { display:grid; grid-template-columns:300px minmax(0,760px); gap:clamp(70px,8vw,140px); justify-content:center; }
.ghv2-article-grid aside { position:sticky; top:108px; align-self:start; }
.ghv2-article-grid aside .gh2-eyebrow { color:#80642f; }
.ghv2-article-grid aside a { display:block; padding:11px 0; border-bottom:1px solid rgba(11,23,32,.14); color:#46565f; font-size:.82rem; line-height:1.45; }
.ghv2-article-grid aside a:hover { color:#7c5e27; }
.ghv2-article-copy section { padding:0 0 52px; margin:0 0 52px; border-bottom:1px solid rgba(11,23,32,.15); }
.ghv2-article-copy section > span { color:#80642f; font-size:.68rem; font-weight:850; letter-spacing:.13em; }
.ghv2-article-copy h2 { margin:12px 0 24px; color:#0b1720; font-size:clamp(2rem,3vw,3.25rem); line-height:1.08; }
.ghv2-article-copy p { color:#4e5d65; font-size:1.03rem; line-height:1.8; }
.ghv2-takeaway { background:#d5d3cb; padding:36px 40px; border-left:4px solid #b68b44; }
.ghv2-takeaway .gh2-eyebrow { color:#80642f; }
.ghv2-takeaway p:last-child { margin-bottom:0; color:#263740; font-size:1.12rem; }

/* Contact and guided enquiry */
.ghv2-contact-routes { padding:0; }
.ghv2-contact-routes-grid { display:grid; grid-template-columns:1.15fr .85fr .85fr; border-left:1px solid rgba(11,23,32,.14); border-right:1px solid rgba(11,23,32,.14); }
.ghv2-contact-route { padding:52px 44px; border-right:1px solid rgba(11,23,32,.14); min-height:350px; }
.ghv2-contact-route:last-child { border-right:0; }
.ghv2-contact-route--urgent { background:#d5d2ca; }
.ghv2-contact-route h2 { margin:10px 0 18px; color:#0b1720; font-size:clamp(1.65rem,2.4vw,2.7rem); line-height:1.06; }
.ghv2-contact-route p { color:#53636b; }
.ghv2-contact-route > a { display:flex; justify-content:space-between; gap:20px; margin-top:34px; padding:18px 0; border-top:1px solid rgba(11,23,32,.18); color:#0b1720; font-weight:850; font-size:1.06rem; }
.ghv2-contact-route small { display:block; margin-top:20px; color:#65737a; font-size:.8rem; line-height:1.55; }
.ghv2-enquiry { padding:clamp(76px,6vw,110px) 0; background:#09131b; }
.ghv2-enquiry-grid { display:grid; grid-template-columns:.72fr 1.18fr; gap:clamp(68px,8vw,140px); align-items:start; }
.ghv2-enquiry-intro h2 { color:#f5f4f0; margin:8px 0 24px; font-size:clamp(2.5rem,4vw,4.55rem); line-height:1.02; }
.ghv2-live-alert { margin-top:34px; padding:24px; border:1px solid rgba(224,188,121,.55); background:rgba(201,161,91,.09); }
.ghv2-live-alert[hidden] { display:none; }
.ghv2-live-alert strong,.ghv2-live-alert a { color:var(--gh2-gold-hi); }
.ghv2-live-alert p { margin-bottom:0; }
.ghv2-enquiry-form { display:grid; grid-template-columns:1fr 1fr; gap:24px 22px; }
.ghv2-field { min-width:0; }
.ghv2-field--full,.ghv2-form-note { grid-column:1 / -1; }
.ghv2-field label { display:block; margin-bottom:8px; color:#dfe4e6; font-size:.78rem; font-weight:800; letter-spacing:.035em; }
.ghv2-field label span { color:var(--gh2-gold-hi); }
.ghv2-field input,.ghv2-field select,.ghv2-field textarea {
  width:100%; border:1px solid rgba(255,255,255,.16); border-radius:0; background:#0d1a23; color:#f5f4f0;
  padding:14px 15px; font:inherit; line-height:1.45; outline:none;
}
.ghv2-field textarea { resize:vertical; }
.ghv2-field input:focus,.ghv2-field select:focus,.ghv2-field textarea:focus { border-color:var(--gh2-gold-hi); box-shadow:0 0 0 1px var(--gh2-gold-hi); }
.ghv2-field--submit { display:flex; align-items:end; }
.ghv2-field--submit .gh2-button { width:100%; justify-content:center; border:0; cursor:pointer; }
.ghv2-form-note { margin:4px 0 0; font-size:.8rem; line-height:1.6; }
.ghv2-form-note a { color:var(--gh2-gold-hi); }
.ghv2-honeypot { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.ghv2-enquiry-notice { padding:46px 0; border-bottom:1px solid rgba(11,23,32,.15); }
.ghv2-enquiry-notice h2 { color:#0b1720; margin:6px 0 10px; font-size:2rem; }
.ghv2-enquiry-notice p { color:#4e5d65; }
.ghv2-enquiry-notice--error { background:#eadfd9; }

@media (max-width:1100px) {
  .ghv2-hero-grid,.ghv2-section-head,.ghv2-subhead,.ghv2-light-strip-grid,.ghv2-about-story-grid,.ghv2-about-company-grid,.ghv2-related-insight-grid,.ghv2-close-grid,.ghv2-service-hero-grid,.ghv2-method-price-grid,.ghv2-article-hero-grid,.ghv2-enquiry-grid { grid-template-columns:1fr; gap:40px; }
  .ghv2-practice-grid { grid-template-columns:1fr; }
  .ghv2-practice-card + .ghv2-practice-card { border-left:0; border-top:1px solid var(--gh2-line); }
  .ghv2-split-hero-grid { grid-template-columns:1fr; }
  .ghv2-split-hero-media { min-height:420px; }
  .ghv2-split-hero-media img { min-height:420px; }
  .ghv2-credibility-grid { grid-template-columns:1fr; gap:46px; }
  .ghv2-ledger > a,.ghv2-static-row { grid-template-columns:50px minmax(230px,.8fr) 1fr 24px; }
  .ghv2-price-ledger > div { grid-template-columns:50px minmax(240px,1fr) 170px; }
  .ghv2-price-ledger small { grid-column:2; }
  .ghv2-price-ledger b { grid-column:3; grid-row:1 / 3; }
  .ghv2-contact-routes-grid { grid-template-columns:1fr 1fr; }
  .ghv2-contact-route--urgent { grid-column:1 / -1; }
  .ghv2-article-grid { grid-template-columns:1fr; }
  .ghv2-article-grid aside { position:static; display:none; }
}

@media (max-width:780px) {
  .ghv2-hero { padding:64px 0 68px; }
  .ghv2-hero h1 { font-size:clamp(3rem,12vw,4.7rem); }
  .ghv2-split-hero { padding:28px 0; }
  .ghv2-split-hero-copy { padding:46px 28px; }
  .ghv2-split-hero-copy h1 { font-size:clamp(2.9rem,11.2vw,4.45rem); }
  .ghv2-split-hero-media,.ghv2-split-hero-media img { min-height:320px; }
  .ghv2-ledger-section,.ghv2-price-section,.ghv2-related,.ghv2-scope,.ghv2-insights-index { padding:58px 0 66px; }
  .ghv2-section-head h2,.ghv2-subhead h2 { font-size:clamp(2.2rem,9.4vw,3.5rem); }
  .ghv2-ledger > a,.ghv2-static-row { grid-template-columns:38px 1fr 24px; gap:10px 16px; padding:22px 0; }
  .ghv2-ledger small,.ghv2-static-row small { grid-column:2; }
  .ghv2-ledger b { grid-column:3; grid-row:1 / 3; }
  .ghv2-practice-pair { padding:42px 0; }
  .ghv2-practice-card { grid-template-rows:250px 1fr; }
  .ghv2-practice-card-copy { padding:32px 24px 38px; }
  .ghv2-credibility,.ghv2-purpose,.ghv2-method-price,.ghv2-about-company,.ghv2-light-strip,.ghv2-close { padding:58px 0 64px; }
  .ghv2-credibility h2,.ghv2-light-strip h2,.ghv2-close h2 { font-size:clamp(2.3rem,10vw,3.8rem); }
  .ghv2-service-hero { padding:64px 0; }
  .ghv2-service-hero h1 { font-size:clamp(3rem,11.8vw,4.75rem); }
  .ghv2-service-visual { height:220px; }
  .ghv2-purpose-grid { grid-template-columns:1fr; }
  .ghv2-purpose-grid > div,.ghv2-purpose-grid > div + div { padding:24px 0; border-right:0; border-bottom:1px solid rgba(11,23,32,.14); }
  .ghv2-purpose-grid > div:last-child { border-bottom:0; }
  .ghv2-purpose-grid span { margin-bottom:20px; }
  .ghv2-scope-list > div { grid-template-columns:38px 1fr; gap:10px 18px; }
  .ghv2-scope-list p { grid-column:2; }
  .ghv2-price-card { padding:30px 26px; }
  .ghv2-price-ledger > div { grid-template-columns:38px 1fr; gap:8px 16px; }
  .ghv2-price-ledger small,.ghv2-price-ledger b { grid-column:2; grid-row:auto; text-align:left; }
  .ghv2-insights-list > a { grid-template-columns:38px 1fr 22px; gap:18px; }
  .ghv2-article-hero { padding:66px 0; }
  .ghv2-article-hero h1 { font-size:clamp(2.7rem,11vw,4.35rem); }
  .ghv2-article-body { padding:58px 0 66px; }
  .ghv2-article-copy section { padding-bottom:38px; margin-bottom:38px; }
  .ghv2-takeaway { padding:28px 24px; }
  .ghv2-contact-routes-grid { grid-template-columns:1fr; border:0; }
  .ghv2-contact-route,.ghv2-contact-route--urgent { grid-column:auto; border-right:0; border-bottom:1px solid rgba(11,23,32,.14); min-height:0; padding:38px 0; }
  .ghv2-enquiry { padding:58px 0 66px; }
  .ghv2-enquiry-form { grid-template-columns:1fr; }
  .ghv2-field--full,.ghv2-form-note { grid-column:auto; }
}


/* =============================================================
   GHOSTHAWK v2.1.1 — internal-page rhythm and shell alignment
   Aligns the inner-page header exactly to the approved homepage,
   tightens navigation-led landing pages and makes the Services
   commercial close earn its space.
   ============================================================= */

/* One public header geometry everywhere: match the approved homepage. */
.site-header .container.nav-wrap {
  width:min(1480px,calc(100% - 86px));
  max-width:none;
}
.nav-wrap { min-height:100px; }
.brand img { width:250px !important; max-width:55vw !important; }
.primary-menu { gap:clamp(18px,1.7vw,32px); }
.primary-menu a { padding-top:38px; padding-bottom:35px; }
.primary-menu a::after { bottom:23px; }

/* Services is a routing page, not a sequence of presentation slides. */
.ghv2-services .ghv2-hero { padding:74px 0 66px; }
.ghv2-services .ghv2-ledger-section { padding:58px 0 54px; }
.ghv2-services .ghv2-ledger { margin-top:32px; }
.ghv2-services .ghv2-practice-pair { padding:42px 0; }
.ghv2-services .ghv2-light-strip { padding:50px 0 54px; }
.ghv2-services .ghv2-light-strip-grid { align-items:center; }
.ghv2-services .ghv2-light-strip p { margin-top:0; margin-bottom:18px; }

@media (max-width:1100px) {
  .site-header .container.nav-wrap { width:min(100% - 56px,1480px); }
  .ghv2-services .ghv2-hero { padding:66px 0 60px; }
  .ghv2-services .ghv2-ledger-section { padding:54px 0 50px; }
  .ghv2-services .ghv2-practice-pair { padding:38px 0; }
}

@media (max-width:820px) {
  .site-header .container.nav-wrap { width:calc(100% - 38px); }
  .nav-wrap { min-height:70px; }
  .brand img { width:178px !important; }
  .primary-menu a { padding:14px 0; }
  .ghv2-services .ghv2-hero { padding:56px 0 52px; }
  .ghv2-services .ghv2-ledger-section { padding:50px 0 46px; }
  .ghv2-services .ghv2-practice-pair { padding:34px 0; }
  .ghv2-services .ghv2-light-strip { padding:46px 0 50px; }
}


/* ============================================================
   GHOSTHAWK v2.1.4 — specialist capability row fix
   ============================================================ */
.ghv2-service-index { padding:50px 0 54px; border-top:1px solid var(--gh2-line); background:#09131b; }
.ghv2-service-index-head { display:grid; grid-template-columns:.92fr .78fr; gap:clamp(56px,7vw,118px); align-items:end; margin-bottom:34px; }
.ghv2-service-index-head h2 { margin:8px 0 0; color:#f5f4f0; font-size:clamp(2.35rem,3.8vw,4.35rem); line-height:.98; letter-spacing:-.035em; }
.ghv2-service-index-head > p { margin:0; max-width:620px; font-size:1rem; line-height:1.7; }
.ghv2-service-index-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--gh2-line); border-bottom:1px solid var(--gh2-line); }
.ghv2-service-index-column { padding:28px 44px 30px 0; }
.ghv2-service-index-column + .ghv2-service-index-column { padding-left:44px; padding-right:0; border-left:1px solid var(--gh2-line); }
.ghv2-service-index-title { display:flex; align-items:baseline; margin-bottom:10px; }
.ghv2-service-index-title h3 { margin:0; color:#f5f4f0; font-size:1.28rem; line-height:1.2; }
.ghv2-service-index-list a { display:grid; grid-template-columns:34px 1fr 20px; gap:12px; align-items:center; padding:14px 0; border-bottom:1px solid var(--gh2-line); color:#f0f2f2; }
.ghv2-service-index-list a:hover { color:var(--gh2-gold-hi); }
.ghv2-service-index-list small,.ghv2-service-index-specialist-grid small { color:var(--gh2-gold-hi); font-size:.64rem; font-weight:850; letter-spacing:.08em; }
.ghv2-service-index-list strong,.ghv2-service-index-specialist-grid strong { font-size:.94rem; line-height:1.35; font-weight:760; }
.ghv2-service-index-list b,.ghv2-service-index-specialist-grid b { color:var(--gh2-gold-hi); font-size:.9rem; text-align:right; }
.ghv2-service-index-subhead { margin:0; color:#8d9aa2; text-transform:uppercase; font-size:.65rem; font-weight:850; letter-spacing:.13em; }
.ghv2-service-index-specialist { padding:24px 0 0; }
.ghv2-service-index-specialist-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:10px; border-top:1px solid var(--gh2-line); border-bottom:1px solid var(--gh2-line); }
.ghv2-service-index-specialist-grid a { display:grid; grid-template-columns:34px 1fr 20px; gap:12px; align-items:center; padding:16px 0; color:#f0f2f2; }
.ghv2-service-index-specialist-grid a:hover { color:var(--gh2-gold-hi); }
.ghv2-service-index-specialist-grid a:first-child { padding-right:44px; }
.ghv2-service-index-specialist-grid a + a { padding-left:44px; border-left:1px solid var(--gh2-line); }

@media (max-width:1100px) {
  .ghv2-service-index-head { grid-template-columns:1fr; gap:20px; }
}

@media (max-width:820px) {
  .ghv2-service-index { padding:46px 0 48px; }
  .ghv2-service-index-grid { grid-template-columns:1fr; }
  .ghv2-service-index-column,.ghv2-service-index-column + .ghv2-service-index-column { padding:24px 0 26px; border-left:0; }
  .ghv2-service-index-column + .ghv2-service-index-column { border-top:1px solid var(--gh2-line); }
  .ghv2-service-index-specialist-grid { grid-template-columns:1fr; }
  .ghv2-service-index-specialist-grid a:first-child,.ghv2-service-index-specialist-grid a + a { padding:14px 0; border-left:0; }
  .ghv2-service-index-specialist-grid a + a { border-top:1px solid var(--gh2-line); }
}


/* ============================================================
   GHOSTHAWK v2.1.5 — Asset Operations hub refinement
   ============================================================ */
.ghv2-division--asset .ghv2-split-hero { padding-bottom:42px; }
.ghv2-division--asset .ghv2-ledger-section { padding-top:58px; }

@media (max-width:820px) {
  .ghv2-division--asset .ghv2-split-hero { padding-bottom:22px; }
  .ghv2-division--asset .ghv2-ledger-section { padding-top:48px; }
}

/* ============================================================
   GHOSTHAWK v2.1.6 — Investigation & Intelligence hub refinement
   ============================================================ */
.ghv2-division--intel .ghv2-split-hero { padding-bottom:42px; }
.ghv2-division--intel .ghv2-ledger-section { padding-top:58px; }

@media (max-width:820px) {
  .ghv2-division--intel .ghv2-split-hero { padding-bottom:22px; }
  .ghv2-division--intel .ghv2-ledger-section { padding-top:48px; }
}


/* =========================================================
   2.2.0 — individual service-page editorial system
   ========================================================= */
.ghv220-service-hero { background:#071017; padding:66px 0 64px; }
.ghv220-service-hero-grid { display:grid; grid-template-columns:minmax(0,.96fr) minmax(420px,.78fr); gap:clamp(64px,7vw,118px); align-items:start; }
.ghv220-service-hero-copy { padding-top:10px; }
.ghv220-service-hero .ghv2-breadcrumb { display:inline-flex; align-items:center; gap:8px; margin-bottom:30px; color:var(--gh2-gold-hi); font-size:.72rem; font-weight:800; letter-spacing:.105em; text-transform:uppercase; }
.ghv220-service-hero .ghv2-breadcrumb:hover { color:#f3d28d; }
.ghv220-service-hero h1 { margin:0; max-width:900px; color:#f6f5f1; font-size:clamp(3.45rem,5.25vw,5.95rem); line-height:.95; letter-spacing:-.045em; }
.ghv220-service-statement { margin:30px 0 28px; max-width:790px; color:#d6dde1; font-size:clamp(1.18rem,1.55vw,1.5rem); line-height:1.55; }
.ghv220-service-intro { border-top:1px solid var(--gh2-line); }
.ghv220-service-visual { margin:0; height:320px; overflow:hidden; border-bottom:1px solid var(--gh2-line); background:#0a141c; }
.ghv220-service-visual img { width:100%; height:100%; display:block; object-fit:cover; filter:saturate(.72) brightness(.88); }
.ghv2-service--intel .ghv220-service-visual img { filter:saturate(.62) brightness(.92); }
.ghv220-service-intro > p { margin:26px 0 0; max-width:680px; color:#aebbc3; font-size:1rem; line-height:1.78; }

.ghv220-live-route { background:#0d1922; border-top:1px solid var(--gh2-line); border-bottom:1px solid var(--gh2-line); padding:32px 0; }
.ghv220-live-route-grid { display:grid; grid-template-columns:.9fr 1fr; gap:clamp(48px,7vw,110px); align-items:center; }
.ghv220-live-route h2 { margin:8px 0 0; color:#f5f4f0; font-size:clamp(1.9rem,2.7vw,3.15rem); line-height:1.05; }
.ghv220-live-route-grid > div:last-child { display:grid; grid-template-columns:1fr auto; gap:18px 34px; align-items:center; }
.ghv220-live-route-grid > div:last-child p { margin:0; }
.ghv220-live-route a { color:var(--gh2-gold-hi); font-size:1.08rem; font-weight:850; white-space:nowrap; }

.ghv220-outcomes { padding:54px 0 58px; background:#e4e3de; color:#0b1720; }
.ghv220-outcomes-head { display:grid; grid-template-columns:.72fr 1fr; gap:clamp(54px,7vw,112px); align-items:end; }
.ghv220-outcomes-head > p:last-child { margin:0; max-width:720px; color:#526470; line-height:1.7; }
.ghv220-outcomes .gh2-eyebrow { color:#80642f; }
.ghv220-outcomes-grid { margin-top:28px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(11,23,32,.2); }
.ghv220-outcomes-grid > div { padding:26px 28px 10px 0; border-right:1px solid rgba(11,23,32,.14); }
.ghv220-outcomes-grid > div + div { padding-left:28px; }
.ghv220-outcomes-grid > div:last-child { border-right:0; }
.ghv220-outcomes-grid span { display:block; margin-bottom:34px; color:#80642f; font-size:.67rem; font-weight:850; letter-spacing:.13em; }
.ghv220-outcomes-grid strong { display:block; color:#0b1720; font-size:clamp(1.35rem,1.85vw,2.05rem); line-height:1.22; }

.ghv220-flow { padding:64px 0 68px; background:#09131b; }
.ghv220-flow-head { display:grid; grid-template-columns:.88fr .72fr; gap:clamp(58px,7vw,118px); align-items:end; }
.ghv220-flow-head h2 { margin:8px 0 0; color:#f5f4f0; max-width:780px; font-size:clamp(2.55rem,4vw,4.55rem); line-height:1; letter-spacing:-.035em; }
.ghv220-flow-head > p { margin:0; max-width:660px; }
.ghv220-flow-list { margin-top:36px; border-top:1px solid var(--gh2-line); }
.ghv220-flow-list > div { display:grid; grid-template-columns:56px minmax(250px,.58fr) 1fr; gap:24px; padding:26px 0; border-bottom:1px solid var(--gh2-line-soft); }
.ghv220-flow-list span { color:var(--gh2-gold); font-size:.68rem; font-weight:850; letter-spacing:.13em; }
.ghv220-flow-list h3 { margin:0; color:#f5f4f0; font-size:1.38rem; line-height:1.25; }
.ghv220-flow-list p { margin:0; max-width:800px; }

.ghv220-price { padding:54px 0 58px; background:#e4e3de; color:#0b1720; }
.ghv220-price-grid { display:grid; grid-template-columns:.82fr 1fr; gap:clamp(64px,8vw,132px); align-items:start; }
.ghv220-price .gh2-eyebrow { color:#80642f; }
.ghv220-price h2 { margin:8px 0 18px; color:#0b1720; font-size:clamp(2.25rem,3.55vw,4.05rem); line-height:1.02; letter-spacing:-.035em; }
.ghv220-price-grid > div:first-child > p:last-child { max-width:620px; color:#526470; }
.ghv220-price-copy { padding-top:2px; border-top:1px solid rgba(11,23,32,.22); }
.ghv220-price-copy h3 { margin:18px 0 14px; color:#0b1720; font-size:clamp(1.7rem,2.5vw,2.85rem); line-height:1.12; }
.ghv220-price-copy p { color:#526470; }
.ghv220-price-rule { padding-top:18px; border-top:1px solid rgba(11,23,32,.14); }

.ghv220-methods { padding:60px 0 64px; background:#0b151e; }
.ghv220-methods-grid { display:grid; grid-template-columns:.78fr 1fr; gap:clamp(62px,8vw,132px); }
.ghv220-methods h2 { margin:8px 0 18px; max-width:580px; color:#f5f4f0; font-size:clamp(2.35rem,3.6vw,4.1rem); line-height:1.02; letter-spacing:-.035em; }
.ghv220-methods-grid > div:first-child > p:last-child { max-width:590px; }
.ghv220-methods-list { border-top:1px solid var(--gh2-line); }
.ghv220-methods-list > div { display:grid; grid-template-columns:42px 1fr; gap:16px; padding:17px 0; border-bottom:1px solid var(--gh2-line-soft); }
.ghv220-methods-list span { color:var(--gh2-gold); font-size:.65rem; font-weight:850; letter-spacing:.12em; }
.ghv220-methods-list strong { color:#edf0f0; font-size:1rem; line-height:1.4; }

.ghv220-related-insight { padding:58px 0 62px; }
.ghv220-related { padding:54px 0 58px; }
.ghv220-related .ghv2-section-head { margin-bottom:28px; }
.ghv220-related .ghv2-ledger { margin-top:0; }
.ghv220-service-close { padding:58px 0 62px; }

@media (max-width: 900px) {
  .ghv220-service-hero-grid,.ghv220-live-route-grid,.ghv220-outcomes-head,.ghv220-flow-head,.ghv220-price-grid,.ghv220-methods-grid { grid-template-columns:1fr; gap:34px; }
  .ghv220-service-hero { padding:58px 0 56px; }
  .ghv220-service-hero h1 { font-size:clamp(3rem,11.4vw,4.8rem); }
  .ghv220-service-visual { height:250px; }
  .ghv220-live-route-grid > div:last-child { grid-template-columns:1fr; }
  .ghv220-outcomes-grid { grid-template-columns:1fr; }
  .ghv220-outcomes-grid > div,.ghv220-outcomes-grid > div + div { padding:22px 0; border-right:0; border-bottom:1px solid rgba(11,23,32,.14); }
  .ghv220-outcomes-grid > div:last-child { border-bottom:0; }
  .ghv220-outcomes-grid span { margin-bottom:14px; }
  .ghv220-flow-list > div { grid-template-columns:38px 1fr; gap:10px 18px; }
  .ghv220-flow-list p { grid-column:2; }
}

@media (max-width: 620px) {
  .ghv220-service-hero { padding:48px 0 50px; }
  .ghv220-service-visual { height:210px; }
  .ghv220-outcomes,.ghv220-price { padding:46px 0 50px; }
  .ghv220-flow,.ghv220-methods,.ghv220-related,.ghv220-related-insight,.ghv220-service-close { padding:50px 0 54px; }
}


/* =========================================================
   2.2.3 — commercial clarity and non-returned recovery boundary
   2.2.2 — service-by-service content audit
   2.2.1 — service-page refinement
   ========================================================= */
.ghv220-related .ghv2-ledger--related > a {
  grid-template-columns:minmax(300px,.9fr) minmax(320px,1fr) 28px;
  align-items:center;
}
.ghv220-related-name { min-width:0; }
.ghv220-related-name > span {
  display:block; margin:0 0 7px; color:var(--gh2-gold);
  font-size:.67rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase;
}
.ghv220-related-name > strong { display:block; }

@media (max-width:1100px) {
  .ghv220-related .ghv2-ledger--related > a { grid-template-columns:minmax(260px,.85fr) 1fr 24px; }
}
@media (max-width:780px) {
  .ghv220-related .ghv2-ledger--related > a { grid-template-columns:1fr 24px; gap:10px 16px; }
  .ghv220-related .ghv2-ledger--related > a > small { grid-column:1; }
  .ghv220-related .ghv2-ledger--related > a > b { grid-column:2; grid-row:1 / 3; }
}

/* =========================================================
   2.2.4 — equal-weight service pricing architecture
   ========================================================= */
.ghv224-price-head {
  display:grid;
  grid-template-columns:.82fr 1fr;
  gap:clamp(64px,8vw,132px);
  align-items:start;
  margin-bottom:34px;
}
.ghv224-price-head > div:first-child > p:last-child,
.ghv224-price-intro { color:#526470; max-width:690px; }
.ghv224-price-intro { margin:10px 0 0; font-size:1.02rem; line-height:1.72; }
.ghv224-price-options {
  display:grid;
  border-top:1px solid rgba(11,23,32,.22);
  border-bottom:1px solid rgba(11,23,32,.18);
}
.ghv224-price-options--1 { grid-template-columns:minmax(0,1fr); }
.ghv224-price-options--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ghv224-price-options--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ghv224-price-option {
  min-width:0;
  padding:26px 28px 28px 0;
}
.ghv224-price-option + .ghv224-price-option {
  padding-left:28px;
  border-left:1px solid rgba(11,23,32,.14);
}
.ghv224-price-option > span {
  display:block;
  margin-bottom:18px;
  color:#80642f;
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.ghv224-price-option h3 {
  margin:0 0 10px;
  color:#0b1720;
  font-size:clamp(1.25rem,1.65vw,1.78rem);
  line-height:1.14;
  letter-spacing:-.025em;
}
.ghv224-price-option > strong {
  display:block;
  margin:0 0 14px;
  color:#0b1720;
  font-size:clamp(1.5rem,2vw,2.2rem);
  line-height:1.05;
  letter-spacing:-.025em;
}
.ghv224-price-option p {
  margin:0;
  color:#526470;
  line-height:1.62;
}
.ghv224-price-note {
  margin:18px 0 0;
  padding:0 0 0 18px;
  border-left:3px solid #b7904c;
  color:#334956;
  font-weight:650;
  line-height:1.6;
}
.ghv224-price-footer {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:end;
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid rgba(11,23,32,.14);
}
.ghv224-price-footer p { margin:0; color:#526470; line-height:1.65; max-width:980px; }
.ghv224-price-footer .gh2-text-link { white-space:nowrap; }

@media (max-width:900px) {
  .ghv224-price-head { grid-template-columns:1fr; gap:28px; }
  .ghv224-price-options--2,
  .ghv224-price-options--3 { grid-template-columns:1fr; }
  .ghv224-price-option,
  .ghv224-price-option + .ghv224-price-option { padding:24px 0; border-left:0; }
  .ghv224-price-option + .ghv224-price-option { border-top:1px solid rgba(11,23,32,.14); }
  .ghv224-price-footer { grid-template-columns:1fr; align-items:start; }
}


/* =========================================================
   2.2.6 — public text contrast refinement
   Strengthens secondary/body copy across the v2 public system.
   The intention is readable hierarchy rather than faded/disabled text.
   ========================================================= */

/* Dark editorial surfaces: secondary copy remains subordinate, but clearly readable. */
.ghv2-page { --ghv2-copy:#c4d0d6; }
.ghv2-hero-copy p,
.ghv2-section-head > p,
.ghv2-subhead > p,
.ghv2-ledger small,
.ghv2-static-row small,
.ghv2-split-hero-copy > p:not(.gh2-eyebrow),
.ghv220-service-intro > p,
.ghv220-flow-head > p,
.ghv220-flow-list p,
.ghv220-methods-grid > div:first-child > p:last-child,
.ghv2-related-insight p,
.ghv220-related .ghv2-ledger--related > a > small,
.ghv2-about-story p,
.ghv2-price-ledger small,
.ghv2-article-hero-grid > div:last-child p,
.ghv2-close:not(.ghv2-close--light) p {
  color:#c0cbd1;
}

/* Light stone surfaces: use a deliberate slate rather than pale blue-grey. */
.ghv2-light-strip p,
.ghv2-about-company p,
.ghv2-close--light p,
.ghv2-credibility-grid > div > p:last-child,
.ghv2-credibility li p,
.ghv220-outcomes-head > p:last-child,
.ghv220-price-grid > div:first-child > p:last-child,
.ghv220-price-copy p,
.ghv224-price-head > div:first-child > p:last-child,
.ghv224-price-intro,
.ghv224-price-option p,
.ghv224-price-footer p,
.ghv2-article-copy p,
.ghv2-contact-route p {
  color:#42545f;
}

/* Small supporting text on light panels should still look secondary, not disabled. */
.ghv2-contact-route small,
.ghv2-article-grid aside a {
  color:#4a5c66;
}

/* =========================================================
   2.2.7 — light-panel contrast correction
   The previous broad contrast pass did not reliably override the
   pale commercial-supporting copy on the live service pages.
   These selectors deliberately force a readable dark slate on the
   exact pricing/scope explanatory elements, with full opacity.
   ========================================================= */
.ghv224-price-head > div:last-child,
.ghv224-price-intro,
.ghv224-price-note {
  opacity:1 !important;
}

.ghv224-price-intro,
.ghv224-price-note {
  color:#334750 !important;
}

/* Keep ordinary supporting copy on stone panels visibly subordinate
   to headings without allowing it to drift into disabled-looking grey. */
.ghv220-price .ghv224-price-head > div:first-child > p:last-child,
.ghv220-price .ghv224-price-option p,
.ghv220-price .ghv224-price-footer p,
.ghv220-outcomes-head > p:last-child,
.ghv2-light-strip p,
.ghv2-about-company p,
.ghv2-close--light p,
.ghv2-contact-route p {
  color:#3b4e59 !important;
  opacity:1 !important;
}



/* =========================================================
   2.2.10 — service deliverables / customer-output section
   Adds the missing “What you receive” step between the work
   itself and the commercial section on every service page.
   ========================================================= */
.ghv220-deliverables { padding:58px 0 62px; background:#101e28; border-top:1px solid var(--gh2-line-soft); border-bottom:1px solid var(--gh2-line-soft); }
.ghv220-deliverables-head { display:grid; grid-template-columns:.86fr .78fr; gap:clamp(58px,7vw,118px); align-items:end; }
.ghv220-deliverables-head h2 { margin:8px 0 0; max-width:760px; color:#f5f4f0; font-size:clamp(2.45rem,3.8vw,4.35rem); line-height:1.02; letter-spacing:-.035em; }
.ghv220-deliverables-head > p { margin:0; max-width:700px; color:#c0cbd1; line-height:1.72; }
.ghv220-deliverables-grid { margin-top:34px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--gh2-line); }
.ghv220-deliverables-grid article { padding:28px 30px 8px 0; border-right:1px solid var(--gh2-line-soft); }
.ghv220-deliverables-grid article + article { padding-left:30px; }
.ghv220-deliverables-grid article:last-child { border-right:0; }
.ghv220-deliverables-grid span { display:block; margin-bottom:28px; color:var(--gh2-gold); font-size:.67rem; font-weight:850; letter-spacing:.13em; }
.ghv220-deliverables-grid h3 { margin:0 0 12px; color:#f5f4f0; font-size:clamp(1.25rem,1.65vw,1.8rem); line-height:1.2; }
.ghv220-deliverables-grid p { margin:0; color:#c0cbd1; line-height:1.68; }
@media (max-width:900px) {
  .ghv220-deliverables-head { grid-template-columns:1fr; gap:28px; }
  .ghv220-deliverables-grid { grid-template-columns:1fr; }
  .ghv220-deliverables-grid article,.ghv220-deliverables-grid article + article { padding:22px 0; border-right:0; border-bottom:1px solid var(--gh2-line-soft); }
  .ghv220-deliverables-grid article:last-child { border-bottom:0; }
  .ghv220-deliverables-grid span { margin-bottom:12px; }
}
@media (max-width:640px) {
  .ghv220-deliverables { padding:48px 0 52px; }
}

/* v2.2.33 — discreet disclaimer on direct-entry Insight articles. */
.ghv233-insight-disclaimer {
  margin-top: 1.2rem;
  max-width: 44rem;
  font-size: .86rem;
  line-height: 1.55;
  opacity: .68;
}

/* =============================================================
   GHOSTHAWK v2.2.39 — safe mobile navigation + homepage stack
   ============================================================= */
@media (max-width:1180px) {
  /* Full-viewport mobile overlay without JS scroll locking. */
  .site-navigation {
    position:absolute;
    top:76px;
    left:0;
    right:0;
    bottom:auto;
    height:calc(100vh - 76px);
    max-height:calc(100vh - 76px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    background:#050b10;
    backdrop-filter:none;
    border-bottom:0;
    z-index:60;
  }

  /* Do not use the desktop full-width underline in the stacked menu. */
  .primary-menu a::after { display:none; }
  .primary-menu .current-menu-item > a,
  .primary-menu .current_page_item > a { color:var(--accent-2); }
}

@media (max-width:780px) {
  .site-navigation {
    top:70px;
    height:calc(100vh - 70px);
    max-height:calc(100vh - 70px);
    padding:18px 19px calc(28px + env(safe-area-inset-bottom));
  }
  .primary-menu li { border-bottom:1px solid var(--line); }
  .primary-menu a {
    padding:23px 0;
    font-size:1rem;
  }

  /* Force the homepage instruction choices to stack at phone width. */
  .gh2-contact-grid {
    grid-template-columns:minmax(0,1fr);
    min-height:0;
  }
  .gh2-contact-intro { grid-column:auto; }
  .gh2-contact-route { min-width:0; }
}


/* =============================================================
   GHOSTHAWK v2.2.40 — mobile menu rhythm + urgent-card alignment
   ============================================================= */
@media (max-width:780px) {
  /* Homepage-specific desktop navigation rules are more specific than
     the shared mobile menu rules. Match the compact mobile menu rhythm
     used on internal pages without altering the stable menu mechanics. */
  .home .primary-menu a {
    padding:23px 0;
  }
  .home .primary-menu a::after {
    display:none;
  }

  /* Keep shaded urgent routes full-bleed at phone width while restoring
     the same content inset as the surrounding mobile shell. */
  .gh2-contact-urgent {
    margin-left:-19px;
    margin-right:-19px;
    padding:34px 19px;
  }
  .ghv2-contact-route--urgent {
    margin-left:-19px;
    margin-right:-19px;
    padding:38px 19px;
  }
}
