/* Page 12 — Project enquiry briefing desk */
.contact-page-v2 { background: #fff; }
.contact-page-v2 .contact-breadcrumb { background: #fff; }

/* Hero */
.contact-hero-v2 {
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 82% 14%, rgba(36,84,190,.34), transparent 32%),
    linear-gradient(rgba(86,201,222,.055) 1px, transparent 1px),
    linear-gradient(90deg,rgba(86,201,222,.055) 1px,transparent 1px),
    #05132d;
  background-size: auto, 48px 48px, 48px 48px, auto;
}
.contact-hero-v2::before {
  content: "PROJECT INTAKE";
  position: absolute;
  left: -24px;
  bottom: -32px;
  color: rgba(255,255,255,.025);
  font-size: clamp(92px,13vw,188px);
  line-height: .82;
  font-weight: 900;
  letter-spacing: -.065em;
  white-space: nowrap;
}
.contact-hero-inner {
  position: relative;
  z-index: 1;
  min-height: 710px;
  padding: 74px 0;
  display: grid;
  grid-template-columns: minmax(410px,.88fr) minmax(570px,1.12fr);
  gap: 58px;
  align-items: center;
}
.contact-hero-copy { min-width: 0; }
.contact-kicker { display: flex; align-items: center; gap: 17px; color: rgba(255,255,255,.48); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.contact-kicker span { color: var(--cyan); }
.contact-kicker span::before { content: ""; display: inline-block; width: 28px; height: 2px; margin-right: 11px; vertical-align: middle; background: var(--cyan); }
.contact-hero-copy h1 { margin: 34px 0 0; color: #fff; font-size: clamp(50px,5.1vw,70px); line-height: 1.12; letter-spacing: -.045em; }
.contact-hero-statement { margin: 26px 0 0; color: rgba(255,255,255,.94); font-size: clamp(28px,2.7vw,39px); line-height: 1.43; font-weight: 800; letter-spacing: -.035em; }
.contact-hero-statement span { display: block; }
.contact-hero-statement span:last-child { color: var(--cyan); }
.contact-hero-lead { max-width: 620px; margin: 25px 0 0; color: rgba(255,255,255,.69); font-size: 15px; line-height: 1.95; }
.contact-hero-facts { margin: 36px 0 0; display: grid; grid-template-columns: .72fr 1fr 1.35fr; border-top: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.contact-hero-facts > div { min-width: 0; min-height: 72px; padding: 16px 13px; border-right: 1px solid rgba(255,255,255,.13); }
.contact-hero-facts > div:first-child { padding-left: 0; }
.contact-hero-facts > div:last-child { border-right: 0; }
.contact-hero-facts dt { color: rgba(255,255,255,.38); font-size: 7px; font-weight: 900; letter-spacing: .11em; }
.contact-hero-facts dd { margin: 7px 0 0; color: rgba(255,255,255,.85); font-size: 10px; font-weight: 900; white-space: nowrap; }
.contact-hero-facts dd i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: #55d8a6; box-shadow: 0 0 0 4px rgba(85,216,166,.11); }

.contact-intelligence-board {
  position: relative;
  min-width: 0;
  min-height: 530px;
  overflow: hidden;
  background: #081a3b;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 18px;
  box-shadow: 0 32px 82px rgba(0,0,0,.38);
}
.contact-intelligence-board > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: brightness(.56) saturate(.72) contrast(1.08); }
.intake-board-shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(3,13,35,.24),rgba(3,13,35,.42) 48%,rgba(3,13,35,.88)); }
.intake-board-shade::after { content: ""; position: absolute; inset: 0; background: linear-gradient(rgba(86,201,222,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.07) 1px,transparent 1px); background-size: 27px 27px; mask-image: linear-gradient(#000,rgba(0,0,0,.24)); }
.intake-board-head { position: absolute; z-index: 5; left: 0; right: 0; top: 0; height: 48px; padding: 0 20px; display: grid; grid-template-columns: 1fr auto auto; gap: 15px; align-items: center; background: rgba(2,12,34,.78); border-bottom: 1px solid rgba(255,255,255,.16); }
.intake-board-head span,
.intake-board-head b,
.intake-board-head em { font-size: 7px; font-weight: 900; letter-spacing: .12em; font-style: normal; }
.intake-board-head span { color: var(--cyan); }
.intake-board-head b { color: rgba(255,255,255,.43); }
.intake-board-head em { padding: 6px 8px; color: #6ee2b5; background: rgba(85,216,166,.10); border: 1px solid rgba(85,216,166,.30); }
.intake-board-canvas { position: absolute; z-index: 3; inset: 66px 26px 62px; }
.intake-focus { position: absolute; z-index: 3; left: 50%; top: 48%; width: 154px; height: 154px; transform: translate(-50%,-50%); display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; background: rgba(5,27,66,.92); border: 1px solid rgba(86,201,222,.72); border-radius: 50%; box-shadow: 0 0 0 15px rgba(86,201,222,.07), 0 18px 42px rgba(0,0,0,.34); text-align: center; }
.intake-focus::before,
.intake-focus::after { content: ""; position: absolute; inset: 10px; border: 1px dashed rgba(255,255,255,.18); border-radius: 50%; }
.intake-focus::after { inset: -27px; border-style: solid; border-color: rgba(86,201,222,.13); }
.intake-focus span { color: var(--cyan); font-size: 6px; font-weight: 900; letter-spacing: .11em; }
.intake-focus strong { margin-top: 1px; font-size: 34px; line-height: 1; }
.intake-focus small { max-width: 108px; color: rgba(255,255,255,.76); font-size: 7px; line-height: 1.35; font-weight: 800; }
.intake-focus em { margin-top: 6px; color: #6ee2b5; font-size: 5px; line-height: 1; font-weight: 900; letter-spacing: .08em; font-style: normal; }
.intake-node { position: absolute; z-index: 3; width: 174px; min-height: 88px; padding: 12px 11px 10px 42px; overflow: hidden; color: #fff; background: linear-gradient(135deg,rgba(4,23,58,.96),rgba(10,43,105,.91)); border: 1px solid rgba(255,255,255,.27); box-shadow: 0 12px 30px rgba(0,0,0,.30); }
.intake-node::after { content: ""; position: absolute; right: -18px; bottom: -18px; width: 52px; height: 52px; border: 1px solid rgba(86,201,222,.16); border-radius: 50%; box-shadow: 0 0 0 10px rgba(86,201,222,.025); }
.intake-node b { position: absolute; left: 11px; top: 13px; display: grid; place-items: center; width: 22px; height: 22px; color: var(--cyan); border: 1px solid rgba(86,201,222,.44); border-radius: 50%; font-size: 6px; }
.intake-node span { display: block; color: rgba(255,255,255,.92); font-size: 7px; font-weight: 900; letter-spacing: .11em; }
.intake-node small { display: block; margin-top: 5px; color: rgba(255,255,255,.62); font-size: 6px; line-height: 1.45; }
.intake-node em { display: block; margin-top: 6px; color: var(--cyan); font-size: 5px; line-height: 1.3; font-weight: 900; letter-spacing: .06em; font-style: normal; }
.node-scope { left: 0; top: 7%; }
.node-evidence { right: 0; top: 10%; }
.node-output { right: 1%; bottom: 1%; }
.node-governance { left: 1%; bottom: 1%; }
.intake-line { position: absolute; z-index: 2; height: 1px; background: linear-gradient(90deg,rgba(86,201,222,.12),rgba(86,201,222,.82)); transform-origin: left center; }
.line-a { left: 27%; top: 28%; width: 25%; transform: rotate(18deg); }
.line-b { left: 58%; top: 39%; width: 27%; transform: rotate(-24deg); }
.line-c { left: 57%; top: 60%; width: 28%; transform: rotate(31deg); }
.line-d { left: 26%; top: 69%; width: 27%; transform: rotate(-27deg); }
.intake-board-status { position: absolute; z-index: 5; left: 22px; bottom: 17px; min-width: 225px; padding: 9px 12px; display: grid; grid-template-columns: 8px auto; gap: 2px 8px; align-items: center; color: #fff; background: rgba(4,22,57,.88); border: 1px solid rgba(255,255,255,.26); }
.intake-board-status i { grid-row: 1 / 3; width: 8px; height: 8px; border-radius: 50%; background: #55d8a6; box-shadow: 0 0 0 4px rgba(85,216,166,.10); }
.intake-board-status span { color: rgba(255,255,255,.45); font-size: 6px; font-weight: 900; letter-spacing: .1em; }
.intake-board-status b { color: #6ee2b5; font-size: 7px; letter-spacing: .08em; }

/* Shared section headings */
.contact-section-marker { display: flex; align-items: center; gap: 12px; color: var(--blue); }
.contact-section-marker span { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid currentColor; border-radius: 50%; font-size: 9px; font-weight: 900; }
.contact-section-marker b { font-size: 9px; letter-spacing: .15em; }
.contact-section-marker.light { color: var(--cyan); }
.contact-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.68fr); gap: 60px; align-items: end; margin-bottom: 44px; }
.contact-section-heading h2 { margin: 27px 0 0; color: var(--ink); font-size: clamp(39px,4.4vw,58px); line-height: 1.28; letter-spacing: -.04em; }
.contact-section-heading h2 span { display: block; }
.contact-section-heading > p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.95; }

/* Direct contact gateway */
.contact-entry-section { background: #fff; }
.contact-entry-grid { display: grid; grid-template-columns: minmax(0,1.06fr) minmax(430px,.94fr); gap: 20px; }
.contact-channel-panel { min-height: 570px; padding: 54px 52px 42px; display: flex; flex-direction: column; color: #fff; background: linear-gradient(145deg,#06142e,#0a2452 63%,#1111b7); border-radius: 18px; box-shadow: var(--shadow); }
.contact-channel-panel h2 { margin: 33px 0 0; font-size: clamp(35px,3.5vw,48px); line-height: 1.38; letter-spacing: -.04em; }
.contact-channel-panel h2 span { display: block; }
.contact-channel-panel h2 i { display: inline-block; font-style: normal; }
.contact-channel-panel h2 i + i { margin-left: .25em; }
.contact-channel-panel > p { max-width: 650px; margin: 21px 0 0; color: rgba(255,255,255,.70); font-size: 15px; line-height: 1.95; }
.contact-email-actions { margin-top: auto; display: grid; grid-template-columns: minmax(0,1fr) 184px; gap: 10px; }
.contact-email-button { min-width: 0; min-height: 91px; padding: 15px 18px; display: grid; grid-template-columns: 1fr auto; align-content: center; color: var(--ink); background: #fff; border: 1px solid rgba(255,255,255,.75); }
.contact-email-button small { grid-column: 1; color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.contact-email-button strong { grid-column: 1; margin-top: 5px; color: var(--ink); font-size: clamp(20px,2.1vw,28px); line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; }
.contact-email-button i { grid-column: 2; grid-row: 1 / 3; align-self: center; display: grid; place-items: center; width: 37px; height: 37px; color: #fff; background: var(--blue); border-radius: 50%; font-style: normal; }
.contact-email-button:hover { background: #eef7fb; }
.contact-copy-button { min-height: 91px; padding: 14px; color: #fff; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.24); text-align: left; transition: background .2s,border-color .2s; }
.contact-copy-button span { display: block; color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.contact-copy-button b { display: block; margin-top: 7px; font-size: 10px; line-height: 1.55; }
.contact-copy-button:hover,
.contact-copy-button.is-copied { background: rgba(85,216,166,.15); border-color: rgba(85,216,166,.50); }
.contact-copy-status { min-height: 20px; margin: 7px 0 0 !important; color: #86eac3 !important; font-size: 9px !important; line-height: 1.5 !important; }
.contact-channel-note { margin-top: 10px; padding: 13px 15px; display: grid; grid-template-columns: 8px 1fr; gap: 10px; align-items: start; background: rgba(0,0,0,.15); border-left: 2px solid var(--cyan); }
.contact-channel-note i { width: 7px; height: 7px; margin-top: 5px; border: 1px solid var(--cyan); border-radius: 50%; }
.contact-channel-note p { margin: 0; color: rgba(255,255,255,.57); font-size: 9px; line-height: 1.65; }

.contact-protocol-board { position: relative; min-height: 570px; overflow: hidden; color: #fff; background: linear-gradient(110deg,rgba(3,15,40,.96),rgba(5,29,72,.78)),url("../images/home-v3/services-architecture-v4.webp") center/cover no-repeat; border: 1px solid rgba(255,255,255,.16); border-radius: 18px; box-shadow: 0 20px 52px rgba(4,20,52,.16); }
.contact-protocol-board::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 84% 24%,rgba(86,201,222,.16),transparent 34%),linear-gradient(rgba(86,201,222,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.055) 1px,transparent 1px); background-size: auto,25px 25px,25px 25px; }
.protocol-head { position: relative; z-index: 1; min-height: 53px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #fff; background: var(--ink); }
.protocol-head span { color: var(--cyan); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.protocol-head b { color: rgba(255,255,255,.39); font-size: 7px; letter-spacing: .1em; }
.protocol-rows { position: relative; z-index: 1; padding: 18px 21px 0; display: grid; gap: 8px; }
.protocol-rows article { position: relative; min-height: 125px; padding: 16px 72px 15px 17px; background: rgba(4,22,57,.66); border-left: 2px solid rgba(86,201,222,.72); border-bottom: 1px solid rgba(255,255,255,.15); backdrop-filter: blur(2px); }
.protocol-rows article > span { color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.protocol-rows article > b { display: block; margin-top: 8px; color: #fff; font-size: 17px; }
.protocol-rows article p { max-width: 370px; margin: 6px 0 0; color: rgba(255,255,255,.64); font-size: 10px; line-height: 1.75; }
.protocol-rows article em { position: absolute; right: 13px; top: 17px; min-width: 52px; padding: 5px 7px; color: #6ee2b5; background: rgba(85,216,166,.10); border: 1px solid rgba(85,216,166,.31); font-size: 6px; font-weight: 900; letter-spacing: .10em; text-align: center; font-style: normal; }
.protocol-foot { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 17px; min-height: 39px; padding: 0 12px; display: grid; grid-template-columns: 8px 1fr auto; gap: 9px; align-items: center; color: #fff; background: #0d2550; }
.protocol-foot i { width: 7px; height: 7px; border-radius: 50%; background: #55d8a6; }
.protocol-foot span,
.protocol-foot b { font-size: 6px; letter-spacing: .09em; }
.protocol-foot span { color: var(--cyan); }
.protocol-foot b { color: rgba(255,255,255,.58); }

/* Project briefing canvas */
.contact-brief-section { background: #eef2f7; }
.briefing-canvas { position: relative; padding: 18px 18px 65px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; overflow: hidden; background: radial-gradient(circle at 88% 8%,rgba(23,72,212,.25),transparent 30%),linear-gradient(145deg,#06142e,#0a2452); border: 1px solid #193565; border-radius: 18px; box-shadow: var(--shadow); }
.briefing-canvas::before { content: "PROJECT SCOPING CANVAS"; position: absolute; right: 14px; top: -12px; color: rgba(255,255,255,.035); font-size: 54px; font-weight: 900; letter-spacing: -.04em; white-space: nowrap; }
.briefing-card { position: relative; z-index: 1; min-width: 0; min-height: 410px; display: grid; grid-template-rows: 195px 1fr; overflow: hidden; background: #fff; border: 1px solid rgba(255,255,255,.34); }
.briefing-visual { position: relative; min-width: 0; overflow: hidden; color: #fff; background: linear-gradient(145deg,#081a3b,#0c2e69); border-bottom: 1px solid #d8deea; }
.briefing-visual > img { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: brightness(.46) saturate(.72) contrast(1.05); transform: scale(1.025); }
.briefing-visual::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(4,20,52,.72),rgba(4,20,52,.22) 58%,rgba(4,20,52,.64)),linear-gradient(180deg,transparent 42%,rgba(3,15,40,.72)); }
.briefing-visual::before { content: ""; position: absolute; z-index: 2; inset: 0; background: linear-gradient(rgba(86,201,222,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.07) 1px,transparent 1px); background-size: 22px 22px; }
.briefing-visual > :not(img) { z-index: 3; }
.briefing-source-tag { position: absolute; right: 11px; top: 10px; padding: 6px 8px; color: #fff; background: rgba(4,22,57,.78); border: 1px solid rgba(255,255,255,.25); font-size: 5px; font-weight: 900; letter-spacing: .08em; }
.briefing-copy { padding: 23px 26px 22px; display: flex; flex-direction: column; }
.briefing-copy > span { color: var(--blue); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.briefing-copy h3 { margin: 14px 0 0; color: var(--ink); font-size: 20px; line-height: 1.5; }
.briefing-copy p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.briefing-meta { margin-top: auto; padding-top: 15px; display: flex; flex-wrap: wrap; gap: 5px; }
.briefing-meta span { min-height: 22px; padding: 0 8px; display: inline-flex; align-items: center; color: #345078; background: #edf2f8; border: 1px solid #d8e0ec; font-size: 5px; font-weight: 900; letter-spacing: .08em; }

.question-orbits { position: absolute; left: 24%; top: 50%; width: 100px; height: 100px; transform: translate(-50%,-50%); display: grid; place-items: center; border: 1px solid rgba(86,201,222,.35); border-radius: 50%; }
.question-orbits::before,
.question-orbits::after { content: ""; position: absolute; inset: 14px; border: 1px dashed rgba(255,255,255,.20); border-radius: 50%; }
.question-orbits::after { inset: 31px; border-style: solid; border-color: rgba(86,201,222,.68); }
.question-orbits i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(86,201,222,.10); }
.question-orbits i:nth-child(1) { left: 3px; top: 39px; }
.question-orbits i:nth-child(2) { right: 14px; top: 10px; }
.question-orbits i:nth-child(3) { right: 4px; bottom: 23px; }
.question-orbits b { color: #fff; font-size: 27px; }
.question-tags { position: absolute; right: 7%; top: 25px; bottom: 25px; width: 42%; display: grid; gap: 6px; }
.question-tags span { display: flex; align-items: center; padding: 0 12px; color: rgba(255,255,255,.76); background: rgba(255,255,255,.06); border-left: 2px solid var(--cyan); font-size: 8px; font-weight: 900; letter-spacing: .12em; }

.scope-map { position: absolute; left: 8%; top: 22px; width: 54%; height: 105px; border: 1px solid rgba(86,201,222,.27); border-radius: 52% 48% 46% 54%; background: radial-gradient(ellipse at center,rgba(49,100,194,.30),transparent 68%); }
.scope-map::before,
.scope-map::after { content: ""; position: absolute; left: 10%; right: 10%; top: 50%; height: 1px; background: rgba(86,201,222,.25); }
.scope-map::after { left: 50%; top: 12%; bottom: 12%; width: 1px; height: auto; }
.scope-map i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 4px rgba(86,201,222,.10); }
.scope-map i:nth-child(1) { left: 16%; top: 33%; }
.scope-map i:nth-child(2) { left: 48%; top: 51%; }
.scope-map i:nth-child(3) { right: 13%; top: 25%; }
.scope-map i:nth-child(4) { right: 24%; bottom: 16%; }
.scope-map b { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); color: rgba(255,255,255,.40); font-size: 7px; letter-spacing: .12em; }
.scope-axis { position: absolute; right: 6%; top: 28px; bottom: 27px; width: 30%; display: grid; gap: 6px; }
.scope-axis span { display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.72); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.13); font-size: 7px; font-weight: 900; }

.evidence-sources { position: absolute; left: 7%; top: 24px; bottom: 24px; width: 55%; display: grid; gap: 7px; }
.evidence-sources span { padding: 0 12px; display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.68); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.13); font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.evidence-sources span i { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); }
.evidence-check { position: absolute; right: 8%; top: 50%; width: 94px; height: 94px; transform: translateY(-50%); display: grid; place-items: center; border: 1px solid rgba(86,201,222,.46); border-radius: 50%; box-shadow: 0 0 0 11px rgba(86,201,222,.06); }
.evidence-check b { font-size: 30px; }
.evidence-check small { position: absolute; bottom: 18px; color: var(--cyan); font-size: 5px; font-weight: 900; letter-spacing: .09em; }

.output-document { position: absolute; left: 9%; top: 18px; width: 58%; height: 119px; padding: 13px 14px; color: var(--ink); background: #fff; border: 1px solid rgba(255,255,255,.72); box-shadow: 0 12px 25px rgba(0,0,0,.28); transform: rotate(-1deg); }
.output-document > span { color: var(--blue); font-size: 6px; font-weight: 900; letter-spacing: .09em; }
.output-document > i { display: block; height: 4px; margin-top: 7px; background: #dce3ed; }
.output-document > i:nth-of-type(1) { width: 82%; }
.output-document > i:nth-of-type(2) { width: 58%; }
.output-document > i:nth-of-type(3) { width: 73%; }
.output-document > div { position: absolute; left: 14px; right: 14px; bottom: 13px; height: 31px; display: flex; align-items: end; gap: 5px; border-bottom: 1px solid #b8c4d5; }
.output-document > div b { flex: 1; background: linear-gradient(var(--cyan),var(--blue)); }
.output-document > div b:nth-child(1) { height: 32%; }.output-document > div b:nth-child(2) { height: 58%; }.output-document > div b:nth-child(3) { height: 42%; }.output-document > div b:nth-child(4) { height: 84%; }
.output-use { position: absolute; right: 6%; top: 35px; bottom: 33px; width: 28%; display: grid; gap: 7px; }
.output-use span { display: grid; place-items: center; color: rgba(255,255,255,.72); background: rgba(255,255,255,.07); border-left: 2px solid var(--cyan); font-size: 7px; font-weight: 900; }

.briefing-route { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 18px; display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; gap: 10px; align-items: center; }
.briefing-route span { color: rgba(255,255,255,.55); font-size: 6px; font-weight: 900; letter-spacing: .09em; }
.briefing-route span:last-child { color: var(--cyan); }
.briefing-route i { height: 1px; background: linear-gradient(90deg,rgba(86,201,222,.15),rgba(86,201,222,.66)); }

/* Engagement definition dossier */
.definition-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(400px,.68fr); gap: 64px; align-items: end; margin-bottom: 46px; }
.definition-section-heading h2 { margin: 27px 0 0; color: var(--ink); font-size: clamp(42px,4.6vw,61px); line-height: 1.25; letter-spacing: -.045em; }
.definition-section-heading h2 span { display: block; }
.definition-heading-copy { padding: 3px 0 3px 25px; border-left: 3px solid var(--cyan); }
.definition-heading-copy strong { color: var(--ink); font-size: 16px; }
.definition-heading-copy p { margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.9; }

.definition-dossier { position: relative; overflow: hidden; color: #fff; background: #07152f; border: 1px solid #173665; border-radius: 18px; box-shadow: var(--shadow); }
.definition-dossier::before { content: ""; position: absolute; inset: 0; background: linear-gradient(rgba(86,201,222,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.045) 1px,transparent 1px); background-size: 28px 28px; pointer-events: none; }
.definition-dossier-head { position: relative; z-index: 8; min-height: 52px; padding: 0 22px; display: grid; grid-template-columns: 1fr auto auto; gap: 18px; align-items: center; background: #04102a; border-bottom: 1px solid rgba(255,255,255,.16); }
.definition-dossier-head span,
.definition-dossier-head b,
.definition-dossier-head em { font-size: 7px; font-weight: 900; letter-spacing: .12em; font-style: normal; }
.definition-dossier-head span { color: var(--cyan); }
.definition-dossier-head b { color: rgba(255,255,255,.42); }
.definition-dossier-head em { padding: 6px 8px; color: #6ee2b5; background: rgba(85,216,166,.09); border: 1px solid rgba(85,216,166,.30); }

.definition-dossier-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(370px,.76fr) minmax(0,1.24fr); min-height: 720px; }
.definition-context-stage { position: relative; min-width: 0; min-height: 720px; margin: 0; overflow: hidden; background: #06142e; border-right: 1px solid rgba(255,255,255,.17); }
.definition-context-stage > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: brightness(.53) saturate(.62) contrast(1.05); }
.definition-context-shade { position: absolute; inset: 0; background: radial-gradient(circle at 50% 49%,rgba(10,47,108,.12),rgba(3,15,39,.76) 62%),linear-gradient(180deg,rgba(3,15,39,.12),rgba(3,15,39,.83)); }
.definition-context-shade::after { content: ""; position: absolute; inset: 0; background: linear-gradient(rgba(86,201,222,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.06) 1px,transparent 1px); background-size: 28px 28px; }
.definition-context-head { position: absolute; z-index: 3; left: 20px; right: 20px; top: 20px; display: flex; justify-content: space-between; gap: 16px; color: rgba(255,255,255,.42); font-size: 6px; font-weight: 900; letter-spacing: .10em; }
.definition-context-head span { color: var(--cyan); }
.definition-core { position: absolute; z-index: 4; left: 50%; top: 48%; width: 190px; height: 190px; transform: translate(-50%,-50%); display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; background: rgba(4,22,57,.88); border: 1px solid rgba(86,201,222,.64); border-radius: 50%; box-shadow: 0 0 0 18px rgba(86,201,222,.055),0 22px 55px rgba(0,0,0,.38); text-align: center; }
.definition-core::before,
.definition-core::after { content: ""; position: absolute; inset: 13px; border: 1px dashed rgba(255,255,255,.18); border-radius: 50%; }
.definition-core::after { inset: -40px; border-style: solid; border-color: rgba(86,201,222,.13); }
.definition-core small { color: var(--cyan); font-size: 6px; font-weight: 900; letter-spacing: .11em; }
.definition-core strong { margin-top: 10px; font-size: 17px; line-height: 1.55; }
.definition-core i { width: 36px; height: 2px; margin-top: 13px; background: linear-gradient(90deg,var(--cyan),#6ee2b5); }
.definition-stakeholder { position: absolute; z-index: 4; width: 142px; min-height: 64px; padding: 11px 10px 9px 39px; color: #fff; background: rgba(5,28,70,.83); border: 1px solid rgba(255,255,255,.22); backdrop-filter: blur(3px); }
.definition-stakeholder b { position: absolute; left: 10px; top: 11px; display: grid; place-items: center; width: 20px; height: 20px; color: var(--cyan); border: 1px solid rgba(86,201,222,.44); border-radius: 50%; font-size: 6px; }
.definition-stakeholder span { display: block; font-size: 6px; font-weight: 900; letter-spacing: .09em; }
.definition-stakeholder small { display: block; margin-top: 4px; color: rgba(255,255,255,.56); font-size: 6px; }
.stakeholder-management { left: 18px; top: 92px; }
.stakeholder-global { right: 18px; top: 125px; }
.stakeholder-rd { left: 18px; bottom: 145px; }
.stakeholder-manufacturing { right: 18px; bottom: 112px; }
.definition-context-stage figcaption { position: absolute; z-index: 5; left: 20px; right: 20px; bottom: 18px; padding: 15px 17px; background: rgba(4,22,57,.88); border-left: 2px solid var(--cyan); }
.definition-context-stage figcaption span { color: var(--cyan); font-size: 6px; font-weight: 900; letter-spacing: .11em; }
.definition-context-stage figcaption p { margin: 6px 0 0; color: rgba(255,255,255,.66); font-size: 9px; line-height: 1.7; }

.definition-ledger { min-width: 0; background: #f4f7fb; }
.definition-ledger-row { position: relative; min-width: 0; min-height: 180px; display: grid; grid-template-columns: 84px minmax(0,1fr) 150px; color: var(--text); background: rgba(255,255,255,.96); border-bottom: 1px solid #ccd6e4; }
.definition-ledger-row:last-child { border-bottom: 0; }
.definition-ledger-row::after { content: ""; position: absolute; left: 41px; top: 62px; bottom: -18px; width: 1px; background: linear-gradient(rgba(23,72,212,.54),rgba(86,201,222,.12)); }
.definition-ledger-row:last-child::after { display: none; }
.definition-ledger-index { padding-top: 24px; display: flex; flex-direction: column; align-items: center; color: var(--blue); background: linear-gradient(180deg,#edf3fb,#f7f9fc); border-right: 1px solid #d6dfeb; }
.definition-ledger-index > span { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid currentColor; border-radius: 50%; font-size: 9px; font-weight: 900; }
.definition-ledger-index small { margin-top: 12px; color: #6c7c92; font-size: 5px; line-height: 1.45; font-weight: 900; letter-spacing: .08em; text-align: center; }
.definition-ledger-copy { min-width: 0; padding: 23px 22px 19px; }
.definition-ledger-copy > span { color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.definition-ledger-copy h3 { margin: 8px 0 0; color: var(--ink); font-size: 19px; line-height: 1.45; letter-spacing: -.015em; }
.definition-ledger-copy h3 i { display: inline-block; font-style: normal; }
.definition-ledger-copy h3 i + i { margin-left: .18em; }
.definition-ledger-copy p { margin: 7px 0 0; color: var(--muted); font-size: 10px; line-height: 1.75; }
.definition-ledger-copy > div { margin-top: 11px; display: flex; flex-wrap: wrap; gap: 5px; }
.definition-ledger-copy > div b { min-height: 20px; padding: 0 7px; display: inline-flex; align-items: center; color: #405a80; background: #edf2f8; border: 1px solid #d5deea; font-size: 5px; letter-spacing: .07em; }
.definition-micro { position: relative; align-self: center; justify-self: center; width: 116px; height: 108px; overflow: hidden; background: linear-gradient(145deg,#081a3b,#0b2f70); border: 1px solid #1b478c; }
.definition-micro::before { content: ""; position: absolute; inset: 0; background: linear-gradient(rgba(86,201,222,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.08) 1px,transparent 1px); background-size: 17px 17px; }
.micro-decision i { position: absolute; z-index: 2; width: 11px; height: 11px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(86,201,222,.10); }
.micro-decision i:nth-child(1) { left: 14px; top: 18px; }.micro-decision i:nth-child(2) { right: 14px; top: 20px; }.micro-decision i:nth-child(3) { left: 50%; bottom: 16px; transform: translateX(-50%); }
.micro-decision::after { content: ""; position: absolute; left: 20px; right: 20px; top: 27px; bottom: 23px; border-left: 1px solid rgba(86,201,222,.45); border-right: 1px solid rgba(86,201,222,.45); transform: perspective(60px) rotateX(-18deg); }
.micro-decision b { position: absolute; z-index: 3; left: 50%; top: 50%; transform: translate(-50%,-50%); color: #fff; font-size: 6px; letter-spacing: .07em; }
.micro-scope { padding: 13px; display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
.micro-scope span { position: relative; z-index: 2; display: grid; place-items: center; color: rgba(255,255,255,.67); background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.12); font-size: 6px; font-weight: 900; }
.micro-scope i { position: absolute; z-index: 3; left: 50%; top: 50%; width: 25px; height: 25px; transform: translate(-50%,-50%); border: 1px solid var(--cyan); border-radius: 50%; box-shadow: 0 0 0 7px rgba(86,201,222,.07); }
.micro-evidence { padding: 15px 14px; }
.micro-evidence span { position: relative; z-index: 2; display: block; width: 64%; height: 13px; margin-bottom: 7px; background: rgba(255,255,255,.08); border-left: 2px solid var(--cyan); }
.micro-evidence span:nth-child(2) { width: 78%; }.micro-evidence span:nth-child(3) { width: 54%; }
.micro-evidence b { position: absolute; z-index: 3; right: 13px; bottom: 14px; display: grid; place-items: center; width: 35px; height: 35px; color: #fff; border: 1px solid rgba(86,201,222,.55); border-radius: 50%; }
.micro-output { padding: 15px 12px; display: flex; align-items: end; gap: 6px; }
.micro-output span { position: relative; z-index: 2; flex: 1; background: linear-gradient(var(--cyan),var(--blue)); }
.micro-output span:nth-child(1) { height: 26%; }.micro-output span:nth-child(2) { height: 47%; }.micro-output span:nth-child(3) { height: 73%; }
.micro-output i { position: absolute; z-index: 3; left: 13px; right: 13px; top: 25px; height: 1px; background: var(--cyan); transform: rotate(-17deg); transform-origin: left; }

.definition-outcome { position: relative; z-index: 3; padding: 27px 28px 22px; background: linear-gradient(110deg,#071b3d,#0d3476 65%,#1818b8); border-top: 1px solid rgba(255,255,255,.18); }
.definition-outcome-title { display: flex; align-items: baseline; justify-content: space-between; gap: 30px; }
.definition-outcome-title span { color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.definition-outcome-title strong { font-size: 16px; }
.definition-outcome-specs { margin-top: 18px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.17); border-bottom: 1px solid rgba(255,255,255,.17); }
.definition-outcome-specs > div { min-height: 59px; padding: 11px 12px; display: grid; grid-template-columns: 24px 1fr; gap: 8px; align-items: center; border-right: 1px solid rgba(255,255,255,.14); }
.definition-outcome-specs > div:last-child { border-right: 0; }
.definition-outcome-specs b { display: grid; place-items: center; width: 22px; height: 22px; color: var(--cyan); border: 1px solid rgba(86,201,222,.45); border-radius: 50%; font-size: 6px; }
.definition-outcome-specs span { color: rgba(255,255,255,.78); font-size: 8px; font-weight: 800; }
.definition-outcome-flow { margin-top: 15px; display: grid; grid-template-columns: auto 1fr auto 1fr auto; gap: 10px; align-items: center; }
.definition-outcome-flow span,
.definition-outcome-flow b { font-size: 6px; font-weight: 900; letter-spacing: .09em; }
.definition-outcome-flow span { color: rgba(255,255,255,.42); }.definition-outcome-flow b { color: #6ee2b5; }
.definition-outcome-flow i { height: 1px; background: linear-gradient(90deg,rgba(86,201,222,.15),rgba(86,201,222,.68)); }

/* After-email process */
.contact-process-section { overflow: hidden; color: #fff; background: linear-gradient(90deg,rgba(3,14,38,.97) 0%,rgba(4,20,52,.88) 42%,rgba(4,20,52,.75) 72%,rgba(3,14,38,.93) 100%),url("../images/home-v2/approach-research.webp") center/cover no-repeat; }
.contact-process-section::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 76% 38%,rgba(86,201,222,.14),transparent 32%),linear-gradient(rgba(86,201,222,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.05) 1px,transparent 1px); background-size: auto,38px 38px,38px 38px; }
.contact-process-section::after { content: "RESEARCH DESIGN PROTOCOL"; position: absolute; right: -18px; bottom: -22px; color: rgba(255,255,255,.035); font-size: clamp(54px,8vw,116px); line-height: .9; font-weight: 900; letter-spacing: -.055em; white-space: nowrap; }
.contact-process-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(380px,.78fr) minmax(560px,1.22fr); gap: 72px; align-items: center; }
.contact-process-copy h2 { margin: 31px 0 0; font-size: clamp(37px,4vw,54px); line-height: 1.34; letter-spacing: -.04em; }
.contact-process-copy h2 span { display: block; }
.contact-process-copy h2 i { display: inline-block; font-style: normal; }
.contact-process-copy h2 i + i { margin-left: .22em; }
.contact-process-copy > p { margin: 22px 0 0; color: rgba(255,255,255,.64); font-size: 14px; line-height: 1.95; }
.contact-process-rail { position: relative; padding: 18px 24px 65px; background: rgba(8,31,72,.79); border: 1px solid rgba(255,255,255,.21); box-shadow: 0 28px 68px rgba(0,0,0,.32); backdrop-filter: blur(4px); }
.contact-process-rail article { position: relative; min-height: 124px; padding: 20px 82px 20px 67px; border-bottom: 1px solid rgba(255,255,255,.14); }
.contact-process-rail article > b { position: absolute; left: 2px; top: 25px; display: grid; place-items: center; width: 43px; height: 43px; color: var(--cyan); border: 1px solid rgba(86,201,222,.47); border-radius: 50%; font-size: 9px; }
.contact-process-rail article > b::after { content: ""; position: absolute; left: 50%; top: 43px; width: 1px; height: 80px; background: linear-gradient(rgba(86,201,222,.55),rgba(86,201,222,.12)); }
.contact-process-rail article:nth-of-type(3) > b::after { display: none; }
.contact-process-rail article span { color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.contact-process-rail article h3 { margin: 7px 0 0; font-size: 18px; line-height: 1.5; }
.contact-process-rail article h3 i { display: inline-block; font-style: normal; }
.contact-process-rail article h3 i + i { margin-left: .18em; }
.contact-process-rail article p { margin: 5px 0 0; color: rgba(255,255,255,.55); font-size: 10px; line-height: 1.7; }
.contact-process-rail article em { position: absolute; right: 0; top: 25px; min-width: 54px; padding: 5px 7px; color: #6ee2b5; background: rgba(85,216,166,.09); border: 1px solid rgba(85,216,166,.27); font-size: 6px; font-weight: 900; letter-spacing: .09em; text-align: center; font-style: normal; }
.process-quality-gates { position: absolute; left: 24px; right: 24px; bottom: 18px; display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; }
.process-quality-gates span { min-height: 28px; padding: 0 8px; display: flex; align-items: center; gap: 7px; color: rgba(255,255,255,.50); background: rgba(0,0,0,.13); font-size: 5px; font-weight: 900; letter-spacing: .07em; }
.process-quality-gates span i { width: 6px; height: 6px; border-radius: 50%; background: #55d8a6; }

/* Information handling and office */
.contact-assurance-section { background: #fff; }
.contact-assurance-grid { display: grid; grid-template-columns: minmax(480px,1.02fr) minmax(0,.98fr); gap: 62px; align-items: center; }
.contact-office-visual { position: relative; min-height: 510px; margin: 0; overflow: hidden; background: var(--ink); border-radius: 18px; box-shadow: var(--shadow); }
.contact-office-visual > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(.60) saturate(.76); }
.contact-office-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(3,15,39,.15),rgba(3,15,39,.30) 45%,rgba(3,15,39,.92)); }
.office-coordinate { position: absolute; z-index: 2; left: 22px; top: 22px; min-width: 180px; padding: 15px 16px; color: #fff; background: rgba(4,22,57,.80); border: 1px solid rgba(255,255,255,.25); }
.office-coordinate span { display: block; color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.office-coordinate strong { display: block; margin-top: 2px; font-size: 31px; line-height: 1.1; }
.office-coordinate small { display: block; margin-top: 7px; color: rgba(255,255,255,.45); font-size: 6px; letter-spacing: .08em; }
.contact-office-visual figcaption { position: absolute; z-index: 3; left: 28px; right: 28px; bottom: 24px; display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: end; color: #fff; }
.contact-office-visual figcaption b { font-size: 18px; }
.contact-office-visual address { color: rgba(255,255,255,.68); font-size: 11px; line-height: 1.75; text-align: right; font-style: normal; }
.contact-assurance-copy h2 { margin: 29px 0 0; color: var(--ink); font-size: clamp(35px,3.6vw,48px); line-height: 1.38; letter-spacing: -.04em; }
.contact-assurance-copy h2 span { display: block; }
.contact-assurance-copy h2 i { display: inline-block; font-style: normal; }
.contact-assurance-copy h2 i + i { margin-left: .2em; }
.contact-assurance-copy > p { margin: 20px 0 0; color: var(--muted); font-size: 14px; line-height: 1.95; }
.assurance-points { margin-top: 30px; border-top: 1px solid var(--line); }
.assurance-points > div { min-height: 63px; padding: 11px 0; display: grid; grid-template-columns: 145px 1fr; gap: 18px; align-items: center; border-bottom: 1px solid var(--line); }
.assurance-points span { color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .11em; }
.assurance-points b { color: var(--ink); font-size: 12px; line-height: 1.6; }
.contact-policy-link { display: inline-flex; align-items: center; gap: 13px; margin-top: 25px; padding-bottom: 5px; color: var(--blue); border-bottom: 1px solid rgba(23,72,212,.35); font-size: 11px; font-weight: 900; }
.contact-policy-link::after { content: "\2192"; font-size: 16px; }

.contact-final-bar { min-height: 190px; margin-top: 82px; padding: 38px 44px; display: grid; grid-template-columns: 1fr minmax(380px,.72fr); gap: 50px; align-items: center; color: #fff; background: linear-gradient(120deg,#07152f,#0b2b69 60%,#1919bd); border-radius: 18px; box-shadow: var(--shadow); }
.contact-final-bar > div > span { color: var(--cyan); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.contact-final-bar h2 { margin: 9px 0 0; font-size: clamp(25px,2.5vw,35px); line-height: 1.45; }
.contact-final-bar h2 i { display: inline-block; font-style: normal; }
.contact-final-bar h2 i + i { margin-left: .22em; }
.contact-final-bar > a { min-width: 0; min-height: 83px; padding: 14px 17px; display: grid; grid-template-columns: 1fr auto; align-content: center; color: var(--ink); background: #fff; }
.contact-final-bar > a small { grid-column: 1; color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .11em; }
.contact-final-bar > a b { grid-column: 1; margin-top: 4px; font-size: 22px; overflow-wrap: anywhere; }
.contact-final-bar > a i { grid-column: 2; grid-row: 1 / 3; align-self: center; color: var(--blue); font-size: 25px; font-style: normal; }

@media (max-width: 1100px) {
  .contact-hero-inner { grid-template-columns: minmax(360px,.82fr) minmax(500px,1.18fr); gap: 34px; }
  .contact-hero-statement { font-size: 34px; }
  .contact-intelligence-board { min-height: 490px; }
  .contact-entry-grid { grid-template-columns: minmax(0,1fr) minmax(380px,.87fr); }
  .contact-channel-panel { padding-inline: 38px; }
  .contact-email-actions { grid-template-columns: 1fr; }
  .contact-copy-button { min-height: 67px; }
  .contact-assurance-grid { grid-template-columns: minmax(420px,.95fr) 1.05fr; gap: 45px; }
  .definition-dossier-grid { grid-template-columns: minmax(330px,.68fr) minmax(0,1.32fr); }
  .definition-ledger-row { grid-template-columns: 72px minmax(0,1fr) 125px; }
  .definition-ledger-row::after { left: 35px; }
  .definition-ledger-copy { padding-inline: 18px; }
  .definition-ledger-copy h3 { font-size: 17px; }
  .definition-micro { width: 102px; height: 102px; }
  .definition-stakeholder { width: 128px; }
  .contact-process-grid { grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: 36px; }
  .contact-process-rail { min-width: 0; }
}

@media (max-width: 860px) {
  .contact-page-v2.menu-open .site-header { backdrop-filter: none; }
  .contact-page-v2 .global-nav.is-open { top: 70px; bottom: 0; height: auto; min-height: 0; }
  .contact-hero-inner { min-height: 0; padding: 68px 0 82px; grid-template-columns: 1fr; gap: 52px; }
  .contact-hero-copy { max-width: 720px; }
  .contact-intelligence-board { width: min(720px,100%); min-height: 540px; margin-inline: auto; }
  .contact-entry-grid { grid-template-columns: 1fr; }
  .contact-channel-panel,
  .contact-protocol-board { min-height: 540px; }
  .contact-section-heading { grid-template-columns: 1fr; gap: 20px; }
  .contact-process-grid { grid-template-columns: 1fr; gap: 46px; }
  .contact-process-copy { max-width: 720px; }
  .contact-assurance-grid { grid-template-columns: 1fr; }
  .contact-office-visual { min-height: 500px; }
  .contact-assurance-copy { max-width: 720px; }
  .contact-final-bar { grid-template-columns: 1fr; gap: 25px; }
  .definition-section-heading { grid-template-columns: 1fr; gap: 22px; }
  .definition-heading-copy { max-width: 720px; }
  .definition-dossier-grid { grid-template-columns: 1fr; }
  .definition-context-stage { min-height: 590px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.17); }
  .definition-ledger-row { grid-template-columns: 84px minmax(0,1fr) 150px; }
  .definition-ledger-row::after { left: 41px; }
  .definition-ledger-copy { padding-inline: 22px; }
  .definition-micro { width: 116px; height: 108px; }
  .definition-stakeholder { width: 142px; }
}

@media (max-width: 600px) {
  .contact-hero-inner { padding: 52px 0 65px; gap: 40px; }
  .contact-kicker { flex-wrap: wrap; gap: 8px 13px; }
  .contact-hero-copy h1 { margin-top: 27px; font-size: 39px; }
  .contact-hero-statement { margin-top: 20px; font-size: 28px; }
  .contact-hero-lead { font-size: 13px; }
  .contact-hero-facts { grid-template-columns: 1fr; }
  .contact-hero-facts > div { min-height: 51px; padding: 10px 0; display: grid; grid-template-columns: 100px 1fr; gap: 10px; align-items: center; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
  .contact-hero-facts > div:last-child { border-bottom: 0; }
  .contact-hero-facts dd { margin: 0; }
  .contact-intelligence-board { min-height: 405px; border-radius: 12px; }
  .intake-board-head { height: 40px; padding: 0 11px; grid-template-columns: 1fr auto; gap: 8px; }
  .intake-board-head b { display: none; }
  .intake-board-head span,
  .intake-board-head em { font-size: 5px; }
  .intake-board-head em { padding: 5px 6px; }
  .intake-board-canvas { inset: 51px 11px 50px; }
  .intake-focus { width: 104px; height: 104px; top: 50%; }
  .intake-focus strong { font-size: 29px; }
  .intake-focus small { font-size: 6px; }
  .intake-focus em { margin-top: 3px; font-size: 4px; }
  .intake-node { width: 126px; min-height: 76px; padding: 9px 7px 8px 33px; }
  .intake-node b { left: 7px; top: 10px; width: 18px; height: 18px; }
  .intake-node span,
  .intake-node small { font-size: 5px; }
  .intake-node em { margin-top: 4px; font-size: 4px; }
  .node-scope { top: 2%; }
  .node-evidence { top: 4%; }
  .node-output { right: 0; bottom: 0; }
  .node-governance { left: 0; bottom: 0; }
  .intake-board-status { left: 10px; bottom: 10px; min-width: 185px; padding: 7px 9px; }
  .contact-entry-section { padding-top: 58px; }
  .contact-channel-panel { min-height: 0; padding: 34px 23px 28px; border-radius: 13px; }
  .contact-channel-panel h2 { margin-top: 25px; font-size: 27px; }
  .contact-channel-panel h2 i + i { margin-left: 0; }
  .contact-channel-panel > p { font-size: 13px; }
  .contact-email-actions { margin-top: 30px; }
  .contact-email-button { min-height: 81px; padding: 13px 14px; }
  .contact-email-button strong { font-size: 20px; }
  .contact-copy-button { min-height: 60px; }
  .contact-protocol-board { min-height: 550px; border-radius: 13px; }
  .protocol-head { padding: 0 16px; }
  .protocol-rows { padding: 14px 17px 0; }
  .protocol-rows article { min-height: 133px; padding-right: 55px; }
  .protocol-rows article > b { font-size: 15px; }
  .protocol-foot { left: 17px; right: 17px; grid-template-columns: 7px 1fr; }
  .protocol-foot b { display: none; }
  .contact-section-heading h2 { font-size: 32px; }
  .contact-section-heading > p { font-size: 13px; }
  .briefing-canvas { padding: 10px 10px 50px; grid-template-columns: 1fr; gap: 7px; border-radius: 13px; }
  .briefing-card { min-height: 235px; grid-template-columns: 112px minmax(0,1fr); grid-template-rows: 1fr; }
  .briefing-visual { border-right: 1px solid #d8deea; border-bottom: 0; }
  .briefing-copy { padding: 18px 15px; }
  .briefing-copy h3 { margin-top: 9px; font-size: 16px; }
  .briefing-copy p { font-size: 10px; }
  .briefing-source-tag { display: none; }
  .briefing-meta { padding-top: 10px; gap: 3px; }
  .briefing-meta span { min-height: 18px; padding-inline: 5px; font-size: 4px; }
  .question-orbits { left: 50%; width: 75px; height: 75px; }
  .question-tags { display: none; }
  .scope-map { left: 10%; top: 37px; width: 80%; height: 86px; }
  .scope-axis { display: none; }
  .evidence-sources { left: 8px; right: 8px; top: 25px; bottom: 25px; width: auto; gap: 5px; }
  .evidence-sources span { padding: 0 7px; font-size: 5px; }
  .evidence-check { display: none; }
  .output-document { left: 10px; top: 29px; width: 88px; height: 117px; }
  .output-use { display: none; }
  .briefing-route { left: 18px; right: 18px; bottom: 16px; gap: 4px; }
  .briefing-route span { font-size: 4px; }
  .contact-process-copy h2 { font-size: 32px; }
  .contact-process-copy > p { font-size: 13px; }
  .contact-process-rail { padding: 12px 16px 58px; }
  .contact-process-rail article { min-height: 139px; padding: 19px 47px 18px 52px; }
  .contact-process-rail article > b { width: 34px; height: 34px; }
  .contact-process-rail article > b::after { top: 34px; height: 102px; }
  .contact-process-rail article h3 { font-size: 15px; }
  .contact-process-rail article em { right: 0; min-width: 42px; font-size: 5px; }
  .process-quality-gates { left: 16px; right: 16px; grid-template-columns: 1fr; gap: 3px; }
  .process-quality-gates span:nth-child(-n+2) { display: none; }
  .contact-assurance-grid { gap: 38px; }
  .contact-office-visual { min-height: 410px; border-radius: 13px; }
  .contact-office-visual figcaption { left: 20px; right: 20px; bottom: 18px; grid-template-columns: 1fr; gap: 7px; }
  .contact-office-visual address { text-align: left; }
  .contact-assurance-copy h2 { font-size: 31px; }
  .contact-assurance-copy > p { font-size: 13px; }
  .assurance-points > div { grid-template-columns: 1fr; gap: 3px; padding: 13px 0; }
  .contact-final-bar { margin-top: 58px; padding: 30px 23px; border-radius: 13px; }
  .contact-final-bar h2 { font-size: 25px; }
  .contact-final-bar > a b { font-size: 19px; }
  .definition-section-heading { margin-bottom: 31px; }
  .definition-section-heading h2 { font-size: 33px; }
  .definition-heading-copy { padding-left: 17px; }
  .definition-heading-copy strong { font-size: 14px; }
  .definition-heading-copy p { font-size: 12px; }
  .definition-dossier { border-radius: 13px; }
  .definition-dossier-head { min-height: 43px; padding: 0 11px; grid-template-columns: 1fr auto; gap: 8px; }
  .definition-dossier-head b { display: none; }
  .definition-dossier-head span,
  .definition-dossier-head em { font-size: 5px; }
  .definition-dossier-head em { padding: 5px 6px; }
  .definition-context-stage { min-height: 445px; }
  .definition-context-head { left: 12px; right: 12px; top: 13px; font-size: 5px; }
  .definition-context-head b { display: none; }
  .definition-core { width: 139px; height: 139px; }
  .definition-core::after { inset: -25px; }
  .definition-core strong { margin-top: 7px; font-size: 13px; }
  .definition-stakeholder { width: 108px; min-height: 52px; padding: 8px 6px 7px 31px; }
  .definition-stakeholder b { left: 7px; top: 8px; width: 17px; height: 17px; font-size: 5px; }
  .definition-stakeholder span,
  .definition-stakeholder small { font-size: 5px; }
  .stakeholder-management { left: 9px; top: 57px; }
  .stakeholder-global { right: 9px; top: 76px; }
  .stakeholder-rd { left: 9px; bottom: 105px; }
  .stakeholder-manufacturing { right: 9px; bottom: 87px; }
  .definition-context-stage figcaption { left: 11px; right: 11px; bottom: 11px; padding: 11px 12px; }
  .definition-context-stage figcaption p { font-size: 7px; }
  .definition-ledger-row { min-height: 0; grid-template-columns: 50px minmax(0,1fr); grid-template-rows: auto 83px; }
  .definition-ledger-row::after { left: 24px; top: 51px; bottom: -18px; }
  .definition-ledger-index { grid-column: 1; grid-row: 1 / 3; padding-top: 18px; }
  .definition-ledger-index > span { width: 30px; height: 30px; font-size: 7px; }
  .definition-ledger-index small { margin-top: 8px; font-size: 4px; }
  .definition-ledger-copy { grid-column: 2; grid-row: 1; padding: 17px 14px 10px; }
  .definition-ledger-copy h3 { font-size: 16px; }
  .definition-ledger-copy p { font-size: 10px; }
  .definition-ledger-copy > div { margin-top: 9px; }
  .definition-ledger-copy > div b { min-height: 18px; padding-inline: 5px; font-size: 4px; }
  .definition-micro { grid-column: 2; grid-row: 2; align-self: stretch; justify-self: stretch; width: auto; height: auto; margin: 0 14px 12px; }
  .micro-scope { grid-template-columns: repeat(4,1fr); padding: 11px; }
  .micro-evidence { display: flex; align-items: center; gap: 7px; padding: 13px; }
  .micro-evidence span { flex: 1; width: auto !important; margin: 0; }
  .micro-output { padding-inline: 24px; }
  .definition-outcome { padding: 22px 15px 18px; }
  .definition-outcome-title { display: block; }
  .definition-outcome-title strong { display: block; margin-top: 7px; font-size: 14px; }
  .definition-outcome-specs { grid-template-columns: 1fr 1fr; }
  .definition-outcome-specs > div { border-bottom: 1px solid rgba(255,255,255,.14); }
  .definition-outcome-specs > div:nth-child(2) { border-right: 0; }
  .definition-outcome-specs > div:nth-child(n+3) { border-bottom: 0; }
  .definition-outcome-flow { gap: 5px; }
  .definition-outcome-flow span,
  .definition-outcome-flow b { font-size: 4px; }
}

@media (max-width: 350px) {
  .contact-hero-copy h1 { font-size: 36px; }
  .contact-hero-statement { font-size: 25px; }
  .contact-intelligence-board { min-height: 370px; }
  .intake-focus { width: 96px; height: 96px; }
  .intake-node { width: 108px; min-height: 69px; padding-left: 30px; }
  .intake-node em { display: none; }
  .contact-channel-panel h2 { font-size: 25px; }
  .contact-final-bar h2 { font-size: 23px; }
  .contact-section-heading h2,
  .contact-process-copy h2 { font-size: 29px; }
  .briefing-card { min-height: 258px; grid-template-columns: 91px minmax(0,1fr); }
  .briefing-copy { padding-inline: 13px; }
  .briefing-copy h3 { font-size: 15px; }
  .output-document { left: 5px; width: 81px; }
  .contact-office-visual { min-height: 380px; }
  .definition-section-heading h2 { font-size: 26px; letter-spacing: -.055em; }
  .definition-context-stage { min-height: 410px; }
  .definition-core { width: 124px; height: 124px; }
  .definition-core strong { font-size: 12px; }
  .definition-stakeholder { width: 98px; }
  .definition-ledger-row { grid-template-columns: 45px minmax(0,1fr); }
  .definition-ledger-row::after { left: 21px; }
  .definition-ledger-copy { padding-inline: 12px; }
  .definition-ledger-copy h3 { font-size: 15px; }
  .definition-micro { margin-inline: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .contact-email-button,
  .contact-copy-button { transition: none; }
}
